Commit Graph

9990 Commits

Author SHA1 Message Date
Corentin Wallez 0543f78881 Fix -Wc++11-narrowing on ChromeOS
Bug: chromium:1064305

Change-Id: Ie34022633a708eb685138a3df004a65138139caf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19283
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-13 17:10:33 +00:00
Corentin Wallez b3f54318e7 Make dawn_native link against user32.lib on Windows
This is required for the call to the IsWindow function that's in
Surface.cpp.

Bug: chromium:1064305
Change-Id: I0c4a6ed17ba4aada994262d393de142de3f26144
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19282
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-13 17:09:52 +00:00
Zhenyao Mo 4fbd14badb Fix more compilation warnings.
Add -Wconditional-uninitialized -Wc++11-narrowing.

Bug: chromium:1064305
Change-Id: I1c1503cafaa2e58e990fc18998200af1f2c00d06
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19341
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2020-04-13 12:34:20 +00:00
dan sinclair b39dabd0cd Run formatter
TBR=dneto@google.com

Change-Id: Idccbc5eeec6d763cdacd8d050bb396a0c897c7ca
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19400
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-12 19:47:16 +00:00
dan sinclair fa3944c3dd [spirv-writer] Add simple identifier support.
This Cl adds the start of issuing loads for IdentifierExpressions. This
does not handle the more complicated cases around pointers and
OpAccessChain yet.

Bug: tint:5
Change-Id: Ic858a7d9200399e3066ca92cd5c130bbe527de76
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19100
Reviewed-by: David Neto <dneto@google.com>
2020-04-12 18:21:59 +00:00
dan sinclair 0e2da73625 More ignores
Change-Id: Ia855252b711cc20d96780b1880eb28ee29d90364
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19360
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-12 18:21:02 +00:00
Zhenyao Mo 5b7292c8f8 Fix more compilation warnings.
Bug: chromium:1064305
Change-Id: I3aac24f8179d2c9e5206dd4542ea2506f26755e9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19301
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@google.com>
2020-04-11 03:22:33 +00:00
Zhenyao Mo 8619cbe237 Fix two warnings.
1) size_t >= 0 is always true, and trigger a warning. This is fixed
in the code because I feel such warning is useful to catch bugs.

2) extra statements from TRACE. Also fixed.

Bug: chromium:1064305
Change-Id: I487ff38f6947554fd175a19148c6f2aaaf56ed37
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19300
Commit-Queue: Zhenyao Mo <zmo@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-10 19:04:42 +00:00
Bryan Bernhart 4f86505544 D3D12: Bucket CPU descriptor allocators on the device.
Move the CPU descriptor allocators to the device and bucket them to
ensure only kMaxBindingsPerGroup exist rather than create them per BGL.

Also, renames NonShaderVisible => Staging.

BUG=dawn:155

Change-Id: If6dae368e7e2a2b349343bdf898041a049159038
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19001
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2020-04-10 18:43:22 +00:00
Corentin Wallez 42450c6d1c Fix the CMake build because of CMP0077
Prior to CMake 3.12 option() is a cache variable operation which meant
that the overriding of third_party project variables in
third_party/CMakeLists.txt needs to write to the cache.

Also remove a couple extra commas that were causing warnings.

Bug: None
Change-Id: I35efce70cf3e0cb923ebdbad654b2b9883b8f734
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19280
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-10 17:04:31 +00:00
Corentin Wallez d11cc3961a Split third_party/BUILD.gn in per-project files.
Bug: chromium:1064305

Change-Id: I6fc2da97e20865b62ff34a9d1c3f42120ac90348
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19202
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-10 08:24:00 +00:00
Corentin Wallez b31015b836 Split examples, test and utils in their own BUILD.gn
The basic change was to copy-paste targets in the new BUILD.gn files and
fixup paths / add includes. There's a couple more changes that had to be
done at the same time:

 - Multiple files need to know if GLFW is supported so the variable was
moved to dawn_features.gni.
 - The gtest_and_gmock target used to abstract between Dawn's copy of
GTest/GMock is only needed by tests and was moved in src/tests/BUILD.gn.
 - A leftover dawn_end2end_tests target is left in the main BUILD.gn
file that is an exact copy of the on in src/tests/BUILD.gn. This is
because the GN path is hardcoded in Chromium's isolate_map.pyl that also
can't support GN groups. The only way to move a target I could figure
out was to duplicate it temporarily.

Bug: chromium:1064305
Change-Id: I96820e9d6510b8c9b9112c3e6cd8df2413f04287
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19201
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-10 08:20:10 +00:00
Brandon Jones ab2c84ffd2 Residency 6: Enable D3D12 Residency and Add Tests
Toggles on D3D12 residency management by default. Adds basic residency
tests.

Bug: dawn:193
Change-Id: Idafa4a6d0f8f4052fb3428ac3d5f6be018db68cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/16385
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
2020-04-09 23:31:02 +00:00
Brandon Jones 7be1d84975 Residency Bug: Make Setting Heap's Last Submission Serial Optional
When attempting to allocate more than Dawn's budget within a single
serial, all heaps in the LRU will be un-evictable because the last
submission serial is the same as the current serial. We can work
around this by instead using the LockHeap and UnlockHeap functions
instead of EnsureCanMakeResident when calling CreatePlacedResource.
Also added in some additional comments regarding the last submission serial.

Bug: dawn:193
Change-Id: Ie4ec7ed5350b0858ea817431fbf77df6ca8acd96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/18622
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
2020-04-09 23:28:22 +00:00
Austin Eng 26b7d8f6d7 Fix use-after-free if BindGroup is the last owner of its BindGroupLayout
Destruction of the BindGroup needs to ensure that the BindGroupLayout is
destroyed after the BindGroup. This is done by using a custom deleter which
first creates an extra reference to the BGL before deleting the BindGroup.

Bug: dawn:355
Change-Id: I819bbce13473ee4738eaa304f6dac90e0501302a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19060
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2020-04-09 21:22:12 +00:00
David Neto 3743c5ee65 [spirv-reader] Support IAdd
Also adds generic support for generating a combinatorial value
as a const definition.

Bug: tint:3
Change-Id: Idae758d146264491679710967e48ea270436be91
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19107
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-09 20:45:31 +00:00
Ryan Harrison 4d32be4f1b Remove suppressing [chromium-style] errors
Lots of little style nits needed to be fixed for this work.

BUG=tint:44

Change-Id: Ibb45d9e3f6795ee0c09f5eca994bb28e20979d97
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19221
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-09 18:52:06 +00:00
Corentin Wallez 6574f92747 Fix the @rpath of dawn_components
When the libdawn_native target was renamed to dawn_native, the output
library name stayed the same (GN inserts a lib prefix if it isn't
present) but the @rpath annotation changed to be just dawn_native.dylib.

Fix this by adding the lib prefix in the rpath annotation. This requires
changing libdawn_proc to dawn_proc otherwise the rpath annotation would
be liblibdawn_proc.dylib.

Bug: dawn:380
Change-Id: Id8610a6318af3468dcc486ee8d3c035f0273fe0d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19200
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2020-04-09 17:31:40 +00:00
Corentin Wallez 0074b6e710 Remove temporary GN groups after Chromium fix
Bug: chromium:1064305
Change-Id: I8e169de411500c4b618c0a91bb0d8fd0ffb490d5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19180
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-09 17:27:40 +00:00
Corentin Wallez 757d153d54 Fix UBO/SSBO OOB in ComputeStorageBufferBarrierTests
The test was failing on Swiftshader, likely because the allocations for
the SSBO and the UBO where neighbors. The UBO test uses uvec4 instead of
uint so it needs 4 times less invocations to perform the test.

Bug: dawn:283
Change-Id: Id1952505763a0a3eb34718e000cb386e1faa4ade
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19082
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2020-04-09 17:18:40 +00:00
David Neto 1234633b32 [spirv-reader] Handle OpLoad
Bug: tint:3
Change-Id: I25fdf086e49426240a771b70306b417cd8012777
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19140
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-09 13:29:17 +00:00
Corentin Wallez d9c2e89ef1 Fix wgpu::WholeSize not being set correctly inside BindGroup
The only test where this can matter at the moment is the OpArrayLength
test, so one of the buffers tested is repurposed to test wgpu::WholeSize
with an offset.

Bug: dawn:377
Change-Id: I43f22f614dff55e399246c46892a865ec77f13c4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19080
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-09 12:17:00 +00:00
Corentin Wallez 989f139ceb Skip ViewportTest failing on Swiftshader.
The viewport tests assume sub-pixels precision when the Vulkan
specification explicitly allows for no subpixel precision.

Swiftshader seem to have only 4 bits of subpixel precision and fails
only this test surprisingly.

Bug: dawn:283
Change-Id: I77f6a6169a8fdff13448a612abdd4ab1dc42532e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19084
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-09 08:16:50 +00:00
Corentin Wallez d56b69f115 Skip Float16 TextureFormatTests on Swiftshader
Rendering +-INIFNITY with these formats results in a NaN when using
Swiftshader. Temporarily disable these tests while the Swiftshader issue
if being resolved.

Bug: dawn:283
Bug: swiftshader:147
Change-Id: I6e7c91ff72d0b4b6423175f5ab8586fdea42bb53
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19083
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-09 08:16:30 +00:00
Ryan Harrison 2962888b8c Add in basic BUILD.gn and additional DEPS
This is a minimal config that gets us building the tint binary from samples/

BUG=tint:2

Change-Id: Ifafa903e99a34f1c47177eb954df69ecbe70cb36
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19106
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 20:40:25 +00:00
Ryan Harrison 61e170b3c5 Propagate comparison sampler support from spvc
Roll third_party/shaderc/ f175adffa..802636496 (5 commits)

f175adffa9..8026364968

$ git log f175adffa..802636496 --date=short --no-merges --format='%ad %ae %s'
2020-04-07 rharrison Add concept of comparison sampler to API (#1036)
2020-04-06 rharrison Start shaderc v2020.1
2020-04-06 rharrison Finalize shaderc v2020.0
2020-04-06 rharrison Update CHANGES
2020-04-06 rharrison Rolling 5 dependencies and updating exceptions (#1035)

Created with:
  roll-dep third_party/shaderc

BUG=dawn:367

Change-Id: I10c80c2d5ac839eaa33765f845e8680ab759e3a8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19061
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2020-04-08 20:30:52 +00:00
David Neto a1a86007c9 [spirv-reader] Emit stores
Bug: tint:3
Change-Id: Ibda57e58ac13abb650eb0f3e01adbd40b439a82b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19120
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 20:06:26 +00:00
Zhenyao Mo d9d9d1ec73 Make the Vulkan Validation Layers an optional dependency.
The build_overrides directory for the VVL will default to "" which
causes support for them to be skipped if the dependents don't set the
dawn_vulkan_validation_layers_dir variable.

Bug: chromium:1064305
Change-Id: I0a31f5d1d55982b5c953ce8ac6542d38829eedb5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19085
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@google.com>
2020-04-08 20:00:12 +00:00
dan sinclair 7456f4258a Better type determiner errors.
This CL adds the source info into the type determiner errors so they
will include line and column number if available. If the line number is
0 then it's considered the source info is missing and it is not emitted.

Add line and colummn to type determiner errors

Change-Id: I18764a71db80082fd31c8509c5e9b193800f1d95
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19105
Reviewed-by: David Neto <dneto@google.com>
2020-04-08 19:58:35 +00:00
dan sinclair d5dea224e0 Convert vectors to list aliases
This CL converts a few more std::vector<std::unique_ptr<foo>>'s to
FooList aliases.

Change-Id: If0dd672f11beaeabd9e89e82903c2174b11be6e1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19103
Reviewed-by: David Neto <dneto@google.com>
2020-04-08 19:58:28 +00:00
dan sinclair ee8ae04472 Set function storage class in type determiner.
If a non-const variable in a function has a kNone storage class we
update it to kFunction. If there is a storage class other then kFunction
we emit an error.

Bug: tint:5
Change-Id: If45eb91bd0a0095e625eb1d0e1d1e361c784e35d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19102
Reviewed-by: David Neto <dneto@google.com>
2020-04-08 19:58:20 +00:00
Ryan Harrison 9459dbf3ab Use the correct pop pragma
BUG=tint:43

Change-Id: If0f6ff0b65af4c66fe7114eb7160e93ef060fbf9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19104
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 18:52:53 +00:00
dan sinclair 719bfe01bf [spirv-writer] Add relational add
This CL adds the relational add expression to the spirv writer.

Bug: tint:5
Change-Id: Ideed225c63e60f53a019b79803809f8e973299c6
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18605
Reviewed-by: David Neto <dneto@google.com>
2020-04-08 17:18:20 +00:00
David Neto 2c60b4c2cc [spirv-reader] use Function storage class on function vars
Change-Id: I22c76ea8bce7d050411b9dd0e283abe1dae8bc6c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19101
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 17:18:07 +00:00
Corentin Wallez 7119a0278d BUILD.gn: enable additional warnings.
Skia uses more warnings than Dawn, enable in Dawn directly so that
rolls of Dawn into Skia don't introduce warnings. These warnings
seem useful anyway.

Bug: chromium:1064305

Change-Id: I13dc776af84151131584a95caeee2cd21ae80fea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/18964
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2020-04-08 16:04:32 +00:00
Corentin Wallez c08a0d40fc Roll third_party/swiftshader/ 51b2800bb..63ed0e445 (131 commits)
https://swiftshader.googlesource.com/SwiftShader/+log/51b2800bb317..63ed0e445fa5

$ git log 51b2800bb..63ed0e445 --date=short --no-merges --format='%ad %ae %s'
2020-04-07 bclayton Remove src/Device/Config.cpp
2020-04-07 bclayton Kokoro: Check that build files don't reference non-existent files
2020-04-07 bclayton Regres: Fix uncovered calculations after optimizations
2020-04-07 bclayton Regres: Optimize coverage processing
2020-04-07 bclayton Regres: Re-populate treeFile.allSpans on parse.
2020-04-07 bclayton Update third_party/marl/BUILD.gn with new files
2020-04-07 bclayton Squashed 'third_party/marl/' changes from 16e1dc37c..539094011
2020-04-06 bclayton Coverage: Improve uncovered visualizations
2020-04-06 sugoi Don't blend integer formats
2020-04-03 amaiorano Clamp GLES sine/cosine to [-1,1]
2020-04-03 sugoi Delete Plane.cpp and Plane.hpp
2020-04-04 bclayton CMake / Kokoro: Build and run system-unittests.
2020-04-04 bclayton Vulkan: Destruct the list of vk::Query in QueryPool
2020-04-03 amaiorano Really fix Android build
2020-04-03 amaiorano Fix Chromium and Android build
2020-04-03 bclayton Debug: Add missing include.
2020-04-03 bclayton Vulkan/Debug: Create a PhysicalFile if DebugSource has no content
2020-04-03 bclayton Vulkan/Debug: Always provide the dap::Source::path
2020-04-03 bclayton CMake: Don't always regenerate OpenCLDebugInfo100.h
2020-03-31 amaiorano CMake: use gtest and gmock targets
2020-03-30 amaiorano CMake: split out atsc-encoder into its own CMakeLists
2020-03-30 amaiorano CMake: clean up cppdap usage
2020-03-30 amaiorano CMake: split out Reactor into its own CMakeLists
2020-03-30 amaiorano CMake: split out boost into its own CMakeLists
2020-03-30 amaiorano CMake: split out libbacktrace into its own CMakeLists
2020-03-27 amaiorano CMake: split out subzero and llvm-subzero into their own CMakeLists
2020-04-03 bclayton Kokoro: Add the ppa:ubuntu-toolchain-r/test apt-repository
2020-03-30 capn Remove the D3D9 and D3D8 source code
2020-03-30 capn Remove the custom Visual Studio solution and projects
2020-04-02 capn Fix GN build
2020-04-01 bclayton Reactor: Fix remove_if brokenness
2020-04-02 capn Remove the sw::Color<> class
2020-04-02 bclayton Change for loops to use const refs, per performance-for-range-copy clang-tidy.
2020-04-01 sugoi Fix ImageView size computation
2020-03-27 cwallez MetalSurface: set layer.device to a ref of the system default device.
2020-03-31 bclayton Regres: Add invertCommon optimization.
2020-03-31 bclayton Regres: Move optimization logic to separate file
2020-03-31 bclayton Regres: Keep coverage span groups stable.
2020-03-31 bclayton Regres: Split coverage.go into multiple files
2020-03-30 bclayton Regres: Further optimizations for coverage
2020-03-30 bclayton Regres: Add cov.ReadJSON()
2020-03-30 capn Fix implicit narrowing cast
2020-03-30 capn Eliminate the legacy PowerVR SDK
2020-03-30 capn Integrate PowerVR OpenGL ES samples
2020-03-30 capn Fix completeness test of OpenGL ES immutable textures
2020-03-30 cwallez Revert "MetalSurface: set layer.device to a ref of the system default device."
2020-03-27 cwallez MetalSurface: set layer.device to a ref of the system default device.
2020-03-28 capn Don't expose the sampling routine cache's mutex
2020-03-17 capn Create PowerVR targets if submodule already exists
2020-03-28 bclayton Regres: Generate coverage data on nightly runs
(...)
2020-03-24 bclayton CMake: Move LLVM rules out to third_party/llvm-7.0
2020-03-24 bclayton Add missing copyright header to CMakeLists.txt
2020-03-25 bclayton Initial drop of LLVM 10 to third_party/llvm-10.0
2020-03-23 bclayton Regres: Add new run_testlist flags
2020-03-19 capn Remove unused sampler parameter
2020-03-17 capn Specialize sampling routine for immutable sampler data
2020-03-24 bclayton Squashed 'third_party/marl/' changes from ca8408f68..16e1dc37c
2020-03-23 amaiorano CMake: make SWIFTSHADER_DCHECK_ALWAYS_ON work on Windows
2020-03-23 chrisforbes Refactor vertex fetch to use VkFormat more aggressively
2020-03-20 amaiorano Subzero: fix CoroutineBegin generation
2020-03-19 sugoi Fix float to r11g11b10 conversion
2020-03-19 amaiorano marl: manually apply partial patch to fix x86 crashes
2020-03-17 amaiorano Subzero: fix external function calls on x86-32
2020-03-17 amaiorano Subzero: fix partially initialized ManagedStatic assert
2019-12-04 digit [vulkan]: Support multiple external semaphore implementations.
2020-03-16 bclayton Squashed 'third_party/marl/' changes from 64d123947..ca8408f68
2020-03-16 swiftshader.regress Regres: Update test lists @ 3a50a43d
2020-03-13 bclayton SpirvShaderDebugger: Implement scope nesting
2020-03-10 sugoi Compile Vulkan library with Subzero in Chromium
2020-03-13 bclayton SpirvShader: Silence warnings of unexpected opcodes
2020-02-28 amaiorano Subzero: hide dependency on Marl
2020-03-13 amaiorano BUILD.gn: add missing dependency onto marl for SubzeroReactor
2020-03-12 capn Consistently use TRUE/FALSE in CMakeLists.txt
2020-03-13 capn Exclude all static libraries from "all" build target
2020-02-28 amaiorano Subzero: replace Win32 fibers with Marl for couroutines
2020-03-12 bclayton SpirvShaderDebugger: Add flag for printing opcodes as they're executed
2020-03-12 bclayton SpirvShaderDebugger: Make Function extend Scope
2020-03-12 bclayton SpirvShaderDebugger: Add string helper for debug kinds
2020-03-12 bclayton SpirvShader: Implement OpenCLDebugInfo100DebugInfoNone
2020-03-12 bclayton SpirvShaderDebugger: Stub UNIMPLEMENTED() opcodes
2020-03-11 bclayton SpirvShader: Implement OpenCLDebugInfo100DebugInlinedAt
2020-03-11 sugoi Allow 3D filtering in the Blitter
2020-03-12 capn Fix building with latest LLVM
2020-03-12 capn Document single-level YCbCr image assumption
2020-03-09 capn Clarify the PointCoord calculation
2020-03-09 capn Remove unnecessary point setup calculations
2020-03-12 capn Don't needlessly build LLVM
2020-03-12 bclayton Squashed 'third_party/marl/' changes from 94a361cf0..64d123947
2020-03-11 bclayton VkImage: Implement BC7 texture format
2020-03-11 bclayton Squashed 'third_party/marl/' changes from a047dd0bb..94a361cf0
2020-03-06 capn Support running PowerVR samples using SwiftShader on Linux
2020-02-18 bclayton Regres: Roll dEQP to 1.2.1
2020-03-10 capn Regres: support testlist creation from specified hash
2020-03-06 capn Suppress warnings in Subzero dependencies
2020-03-10 bclayton Regres: Simplify running of local tests
2020-03-11 bclayton Kokoro: Update clang-8 URL
2020-03-10 amaiorano Subzero: fix Call on bool-returning functions
2020-03-09 swiftshader.regress Regres: Update test lists @ b44162fd
2020-03-05 madesroches Support for the largePoints feature in Vulkan
2020-03-06 capn Explicitly compile with warnings-as-errors

Created with:
  roll-dep third_party/swiftshader

Bug: None

Change-Id: Ibe8a5630f175de5bc854950121e263103e86c8a8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19081
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-04-08 16:01:22 +00:00
David Neto d877e8b084 [spirv-reader] Start emitting expression
Bug: tint:3
Change-Id: I2e2fe41c43abbcbbc941968c0115d703f6bff501
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18822
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 14:24:18 +00:00
David Neto ec322349e2 [spirv-reader] Emit module-scope var initializers
Bug: tint:3
Change-Id: Ifadd7616945e2392d6705746b295448a21366b0f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18821
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 14:24:06 +00:00
David Neto 4194d0f948 [spirv-reader] Emit function variable initializers
Bug: tint:3
Change-Id: I1c7fa2c282e6dd95ea048df83f608d4462150394
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18820
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-08 14:23:42 +00:00
Corentin Wallez ff77ffee1a Fix wgpu::WholeSize to count until the end of the buffer.
Bug: dawn:377
Change-Id: Ia829ec05e5dd6a218b7f1c1bb7bdaf39088bdf70
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/18960
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2020-04-08 12:09:25 +00:00
Corentin Wallez 36cd17488a dawn_wire: Correctly handle buffer state changes on Destroy()
The server didn't take intercept the destroy() call which meant the
buffer could be unmapped by dawn_native without the status updated in
ServerBuffer. This caused crash when a subsequent UpdateMappedData
command was handled and tried to write into the mapped buffer.

The client needs to also track destroy() otherwise it could sent an
UpdateMappedData to a destroyed buffer which is a fatal error.

Tests are added that cover the client-server interaction for this, but
the pattern that the following is unfortunately not tested directly
against the wire server:

 - CreateBufferMapped
 - Destroy
 - UpdateMappedData

Bug: chromium:1068466
Change-Id: If5185d4a8a81cd5f6bb41c9888a18c44c14b2de4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/18961
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2020-04-08 10:23:35 +00:00
Ryan Harrison 9d2de1d6d4 Add default to conversion utility to avoid build breakage
I am about to add a new entry to the enum being used in this switch on
the spvc side. Temporarily adding in a default here, so that can roll
correctly, then this function can be updated to use the new entry.

BUG=dawn:367

Change-Id: I9345f651e2e23604599a1b25fcd2993127062695
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/19040
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2020-04-07 21:53:37 +00:00
David Neto 4fa1ceb094 [spirv-reader] Emit function vars, no initializers
Bug: tint:3
Change-Id: I64a4a2c675e5440766ffc814867e6cf247d14c13
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18706
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-07 20:25:03 +00:00
David Neto 753cdc75c4 [spirv-reader] Test EmitFunctionDeclaration
Tests FunctionEmitter directly.
This is mostly refactoring to be able to selectively run parts of the
parsing flow, and to access relevant internal data.

Bug: tint:3
Change-Id: Ic2b166a2e9623a7e30e6769806088d12e78dcf45
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18704
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-07 19:56:02 +00:00
David Neto 574bce6746 [spirv-reader] Split function emission into parts
Bug: tint:3
Change-Id: Ifedf4e00c7d89641496330ab20bf797f656c761c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18703
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-07 19:55:54 +00:00
David Neto e70e10953b [spirv-reader] Refactor function emission
Create a FunctionEmitter class.
Move ParserImpl::Name to Namer::Name, and add tests.

Bug: tint:3
Change-Id: I271e8c75f6f5a0edf9d94fe0a4af5a022afac708
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18702
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-04-07 19:54:52 +00:00
dan sinclair cd543df18d Add missing memory include
Change-Id: Icab0d32f199d4b0f95e2c1ebcd9ae9ea9ec7b61c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19020
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2020-04-07 19:42:40 +00:00
Corentin Wallez 30ec4fc626 Fixes to be able to build Dawn inside Skia
Add a dawn_has_build override similarly to angle_has_build that makes
Dawn not depend on Chromium //build if it can avoid it. (this was
previously used for mac_sdk.gni).

Only load the Vulkan Validation Layers' gni if it is enable via
dawn_enable_vulkan_validation_layers.

Fix a GN build warning where the source of dawn_components would be
built twice: for example libdawn_native.MetalBackend.o would be built
once for libdawn_native static and once for libdawn_native shared. Fix
this by making libdawn_native as a static library libdawn_native_static.

Change-Id: Ib8fb72282435eb475d7a11dae0d5a9977572fd57
Bug: chromium:1064305
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/18963
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2020-04-07 19:35:47 +00:00
dan sinclair 0e9d9ed60f Fill in some disabled tests
This CL completes a few of the DISABLED tests.

Change-Id: I38806fb9381240d6e3da700f1fb2dac5f899ca6d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/19000
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
2020-04-07 19:27:49 +00:00
dan sinclair 1c9b486d6e Rename RelationalExpression to BinaryExpression.
Match the more common usage for the expression type.

Bug: tint:37
Change-Id: Ia5d48a0444742ec4e304ea1036e499b3d7cad682
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18981
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
2020-04-07 19:27:41 +00:00