Commit Graph

1626 Commits

Author SHA1 Message Date
Corentin Wallez 7ae959da60 Allowed mismatch sampler/comparison sampler when using SPIRV-Cross
When SPIRV-Cross we always reflect samplers as regular samplers. A
recent change implementing proper validation broke programs using
comparison samplers in that path.

Skip that bit of validation when using SPIRV-Cross, that hack can be
removed once we use Tint unconditionally for reflection.

Also reenables some BGL-ShaderModule compatibility tests with
SPIRV-Cross to cover the "fixed" validation.

Bug: dawn:571
Bug: dawn:367
Change-Id: I2d1a65aaea717b4927ac4e838942547a1b413d33
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56900
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-07-05 15:07:49 +00:00
Brandon Jones aeff235dc3 Drop deprecated rowsPerImage/bytesPerRow behavior
Removes the last remaining code paths supporting the old rowsPerImage
and bytesPerRow defaulting behavior, and updates all related tests to
strictly expect the spec-complaint behavior.

Change-Id: I022db0b142939d82e33d5989460488881e5a1ab3
Bug: dawn:520
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56803
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2021-07-04 18:31:29 +00:00
Li Hao 551e7a1cc3 Fix internal storage buffer usage
TimestampQueryTests.ResolveTwiceToSameBuffer fails on Intel latest
driver on Windows, because the kInternalStorageBuffer is not treated
in buffer usage when adding resource barrier.

Add missed kInternalStorageBuffer in buffer usage and remove
D3D12_RESOURCE_STATE_UNORDERED_ACCESS from QueryResolve, which will be
added by kInternalStorageBuffer.

Bug: dawn:797
Change-Id: I78607002179ba443b0db09c9c3bbc85fcc97a85b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56523
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2021-07-02 09:51:18 +00:00
Austin Eng a5f24e590a Validate textures with filtering/non-filtering/comparison samplers
Renames dawn_native::ComponentTypeBit to SampleTypeBit and makes
the bitmask match wgpu::TextureSampleType. wgpu::TextureComponentType
should be removed in a follow-up CL.

The Format table is augmented with float/unfilterable-float information
so that textures can be validated against the BGLEntry's
TextureSampleType.

EntryPointMetadata::ShaderBindingInfo no longer inherits BindingInfo
because the two types are diverging further. Most notably, this CL
reflects from Tint the supported SampleTypeBits for texture bindings.
This bitset is validated against the bind group layout.

Adds an isFiltering getter to SamplerBase. A filtering sampler must
not be used with a non-filtering sampler binding.

Lastly, the CL reflects sampler/texture pairs from Tint and validates
an entrypoint against the pipeline layout that a filtering sampler is
not used with an unfilterable-float texture binding.

Bug: dawn:367
Change-Id: If9f2c0d8fbad5641c2ecc30615a3c68a6ed6150a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56521
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-07-02 02:29:40 +00:00
Kai Ninomiya 211b4aae7e Remove null-deref in test
Dereferencing a nullptr is UB by spec, even if the method called is
non-virtual and no memory access to nullptr appears to actually occur.
For example:

error: 'this' pointer cannot be null in well-defined C++ code;
comparison may be assumed to always evaluate to true
[-Werror,-Wtautological-undefined-compare]

Bug: b/179840737
Change-Id: I6385e157e9a883cdd65f5ef9be89bcc3a29324fe
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56720
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-07-01 01:43:34 +00:00
Ben Clayton bf832f07d6 Remove all use of deprecated tint APIs and WGSL syntax
Tint:
* Use the new transform::VertexFormat enum names

WGSL:
* The [[set(n)]] decoration is now [[group(n)]]
* [[builtin(vertex_idx)]] is now [[builtin(vertex_index)]]

Change-Id: I9cbf1368074488c4bb7fa81430bb12ec7581c1fb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56540
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-06-30 11:33:04 +00:00
Corentin Wallez 0ecfece609 Metal: make (robustness AND tint) => vertex pulling
Tint's vertex pulling transform supports the whole GPUVertexState so
we can enable it by default when robustness is necessary.

Adds a suppression for failing tests on Metal Intel.

Bug: dawn:805
Bug: dawn:966
Change-Id: Id7b2c6df2291671164647f65fc50c61e27de90b9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56382
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-06-30 09:57:04 +00:00
Austin Eng 2a5fd58832 Remove double test instantiation with/without use_tint_generator
The test bots now instantiate separate test suites with/without
this toggle.

Bug: dawn:571
Change-Id: Ib4e8e89ac347d0030b233d1a3b14b318aa862aa6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56440
Commit-Queue: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-29 17:29:23 +00:00
Corentin Wallez 73b7cd624f Add missing WebGPU limits to Constants.h
This will help check that the Vulkan devices are enough for WebGPU in
a following CL.

In addition to additional limits this CL:

 - Change maxColorAttachments 4 -> 8 to match WebGPU
 - Renames kMinDynamicBufferOffsetAlignment to
   kMinUniformBufferOffsetAlignment.
 - Renames kMaxVertexBufferStride to kMaxVertexBufferArrayStride.
 - Changes validation of buffer offsets to use the separate uniform and
   storage limits (but no test is added because they are the same).
 - Adds validation and a test for kMaxStorageBufferBindingSize.
 - Augment the null::Device memory limit for that new test (it allocates
   a buffer of 512MB).
 - Fix the maxColorAttachment test to not use hardcoded values.

Bug: dawn:796
Change-Id: Ibe4219130a44355ae91c02aaa0a41cf5d9f9e234
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56081
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2021-06-29 08:12:00 +00:00
Li Hao 895bc934bb Implement zero-sized QuerySet
- Add zero-sized implementation in each backend.
- Test creating zero-sized query set for each type.

Bug: dawn:954
Change-Id: Ib2b8a7d890dae6ee40f5a05aac570a4600dedab8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56260
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2021-06-29 08:04:00 +00:00
Yunchao He 405bec157e Implement 3D texture sampling with e2e tests
This change implements 3D texture sampling with an en2end test.
It turns out that the implementation has already been done. The
test can pass with minor changes.

Bug: dawn:547

Change-Id: I5dfe1a446de3287392e39cb4dd58143e115b02cd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56000
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yunchao He <yunchao.he@intel.com>
2021-06-29 04:56:01 +00:00
Sarah 98ab91b474 Update compute shaders tests to include workgroup_size
Change-Id: I97ef98c1cfc1a06c5072d1a52233100ad3d37c09
Bug: tint:884
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56142
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2021-06-29 00:10:01 +00:00
Austin Eng 27b0162b96 Remove explicit test instantiation with use_tint_generator
We're migrating to run all tests with both Tint and SPIRV-Cross.
Remove explicitly instantiating only with Tint, and add
skips for tests that will not work if use_tint_generator is not
enabled.

Bug: dawn:571
Change-Id: I8322dec688e75b6efa8c4f18c6b9439a2e325631
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56261
Auto-Submit: Austin Eng <enga@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
2021-06-28 21:18:40 +00:00
Brandon Jones 55a389762d Deprecated StoreOp::Clear in favor of Discard
Change-Id: Ifac3b980f23c3476d91bb89759b2a60ed5efbc17
Bug: dawn:937
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56045
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
2021-06-28 18:38:24 +00:00
Ben Clayton db7def5816 common: RefBase fixes and improvements
Fix missing Release() on RefBase::operator=(const T&).

Always acquire the new reference before dropping the existing reference.
Consider:
* Object A holds the only reference to object B.
* Ref of A is assigned B.
If A were released before referencing B, then B would be a dead pointer.

Remove RefBase::kNullValue, just use Traits::kNullValue. Avoids an unnecessary constexpr copy.

Add even more tests.

Change-Id: I111079d56cbf8c09162aa6e493078bead9ae97fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55882
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-06-28 10:26:08 +00:00
James Price 0cb3d480ff Enable testing of Metal with Tint MSL generator
We are now passing all of Dawn's E2E tests with the Tint generator.

Bug: dawn:571
Change-Id: Ie74a07bde805b8652ac23af2bda2fa11597d04ce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55980
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-28 09:39:08 +00:00
James Price a0b31e04e8 Add missing structure padding to test
WGSL specifies that the size of a host-shareable structure is a
multiple of the largest alignment of any member in that
structure. While SPIR-V cross doesn't generate this trailing padding,
Tint does, and so we need to pad the host structure to match to avoid
validation errors.

Bug: dawn:571
Change-Id: Id5de89125a74c0469ae69d6e86b4c570bbdb31ab
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56120
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-28 08:38:28 +00:00
Jiawei Shao f7cde7e5a4 Fix wrong declaration in BufferZeroInitTest.BoundAsReadonlyStorageBuffer
This patch fixes a wrong buffer type declaration in the shader used
in BufferZeroInitTest.BoundAsReadonlyStorageBuffer. In this test the
buffer should be bound as a read-only storage buffer, so it should be
declared as var<storage, read> instead of var<storage, read_write>.

BUG: none
Change-Id: Ib85bf199f64e205b944b7233aae31323cbec1819
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/56042
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
2021-06-27 05:28:35 +00:00
Ben Clayton 448e1e91a7 D3D12: Reenable EncodeManyUBOAndSamplers test
Tint has rolled, so this test can be re-enabled.

SPIRV-Cross produces bad results - likely the UBO layout for mat2x2 is
incorrectly padded - so this test is suppressed for !UseTintGenerator.

Fixed: dawn:946
Change-Id: If1d030314f51759e6a2a00dd8edc2597efb1eb4a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55440
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-25 15:44:02 +00:00
Ben Clayton 17686f78cb Test that UBO and SB layout rules are correct and consistent for all backends
Fixed: tint:898
Change-Id: I81633715efd213cf0c566aa44d00bee82aa2c17a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54642
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-06-25 08:51:52 +00:00
Li Hao df4c60546e Add stress test for memory allocation and free on D3D12
It may not be the root cause of CTS memory leak, but we found some
issues in D3D12 memory allocation for large buffers (> 4M).

The memory allocation is not freed correctly when we call buffer
destroy. When we create a large buffer, it always allocate committed
resources from the system memory and append it to LRU cache, and will
try to free the expired memory in LRU cache when the left memory size
is not enough for the current allocation. When we call buffer destroy,
we remove its heap from LRU cache, release its allocation, but will
add the allocation reference to a delete queue and wait to be freed
together in the next device.tick. At this time, the destroyed memory is
not really released to the system memory. If no tick is triggered during
the buffer allocation and deallocation, these memories will never be
reused again and there will be a memory leak. We need to free these
memories when we detect there is not enough memory, do not wait for
device.tick to do that.

Add a stress case to track the issue, and need to discuss how to fix it.

Bug: dawn:957
Change-Id: Id4bcc97496d372ad7c27c31675327ca12e133217
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55740
Commit-Queue: Hao Li <hao.x.li@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-25 08:10:42 +00:00
Austin Eng a9faf7f74a Fix misplaced ASSERT in bind group validation
Fixed: dawn:614
Change-Id: I06e4c89f34a1705346620dea074e3d469cbd1409
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55900
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-06-24 23:05:51 +00:00
Austin Eng 700a5fb869 Add scoped autoreleasepool to tests and examples
This ensures ObjC objects do not leak. On non-Apple
platforms, the scope does nothing.

Fixed: dawn:546
Change-Id: Id43702e6536bf9cb37825a5449511e10cf0734f5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55841
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-24 19:21:31 +00:00
Zhaoming Jiang 1af81e3128 Validate the buffer offset in T2B and B2T for depth/stencil texture
This patch modifies the ValidateLinearTextureCopyOffset for T2B and B2T
commands to make sure that buffer offset is a multiple of 4 when the
texture is of a depth/stencil format. The unittests are also updated
to cover these cases.

Bug: dawn:721
Change-Id: I5cb9487e61e7f6ac7075157a092a1f3577844042
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55720
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-06-24 05:38:00 +00:00
Austin Eng 75c5067ed1 Implement initialization of multisampled textures
Metal needs RenderTarget usage to be added to the texture
allocation so the clear can be done using a render pass.

Already working for GL which does not have usage flags on
creation.
Also working on Vulkan which does not need a render pass.
We use vkCmdClearColorImage.
D3D12 also needs a render pass to clear multisampled textures,
but it already requires multisampled
textures to be created with RenderTarget flags.

To test the behavior, NonzeroTextureCreation tests are
expanded, and the ExpectSampledDepthData helper is factored
into a more general ExpectSampledFloatData helper.

Fixes: dawn:794
Change-Id: If0f9f26f3c58b4292c85265aa7ff330e9931ddae
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55604
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-24 02:01:46 +00:00
Sarah 2a57db73cb update compute shaders to include workgroup_size in their attribute
Change-Id: Ia9027f8ec9c4a293ae1bef735c8b5eeea84e81e2
Bug: tint:884
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55685
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2021-06-23 19:19:06 +00:00
Yunchao He 1317636fc8 Add a few tests for copies and fix bugs found by new tests
This change adds a few tests to cover more copy scenarios like
copy between different mip levels of the same texture, copies
between 3D texture and 2D Array textures for partial copies,
non-zero offset (copy origin), non-zero mip level, etc.

The new tests expose a bug, which is fixed by this change.

It also re-arranges the tests, in order to put all tests into
corresponding categories like T2B, B2T and T2T tests. Within each
category, tests are in the sequence of 2D texture tests, 2D array
texture tests, and 3D texture tests.

Bug: dawn:547

Change-Id: I624a8814d91950e69126705611f02e258eaf216b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55540
Commit-Queue: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-23 17:12:53 +00:00
Corentin Wallez d5f44ce68c Rolling build dependencies for new d3dcompiler_47.dll
This is to get the new version of d3dcompiler_47.dll present in the
updated Windows toolchain.

Also rolls tools/clang and libc++abi to match the version used by
Chromium for this //build and //buildtools revision.

Also fixes -Wdeprecated-copy-with-dtor warnings in Dawn.

Roll build/ ea192b29d..0ff4b3d4e (529 commits; 1 trivial rolls)

ea192b29d2..0ff4b3d4ee

$ git log ea192b29d..0ff4b3d4e --date=short --no-merges --format='%ad %ae %s'
2021-06-22 chromium-autoroll Roll Fuchsia SDK from 5.20210621.3.1 to 5.20210622.0.1
2021-06-22 joelhockey Revert "Roll src/buildtools/third_party/libc++/trunk/ 8fa879467..79a2e924d (426 commits)"
2021-06-22 chromium-autoroll Roll Fuchsia SDK from 5.20210621.1.1 to 5.20210621.3.1
2021-06-21 robliao Add LASTCHANGE_YEAR Support to //build/util/version.py
2021-06-21 chromium-autoroll Roll Fuchsia SDK from 5.20210621.0.1 to 5.20210621.1.1
2021-06-21 stha09 unbundle: add libavcodec/packet.h to shim headers
2021-06-21 thakis Revert "Reland^4 "mac: Temporarily use lld as linker in non-pgo builds""
2021-06-21 chromium-autoroll Roll Fuchsia SDK from 5.20210620.3.1 to 5.20210621.0.1
2021-06-21 chromium-autoroll Roll Fuchsia SDK from 5.20210620.2.1 to 5.20210620.3.1
2021-06-20 chromium-autoroll Roll Fuchsia SDK from 5.20210620.0.1 to 5.20210620.2.1
2021-06-20 chromium-autoroll Roll Fuchsia SDK from 5.20210619.3.1 to 5.20210620.0.1
2021-06-20 thakis Reland^4 "mac: Temporarily use lld as linker in non-pgo builds"
2021-06-20 chromium-autoroll Roll Fuchsia SDK from 5.20210619.1.1 to 5.20210619.3.1
2021-06-19 chromium-autoroll Roll Fuchsia SDK from 5.20210619.0.1 to 5.20210619.1.1
2021-06-19 chromium-autoroll Roll Fuchsia SDK from 5.20210616.3.1 to 5.20210619.0.1
2021-06-19 brucedawson Updated toolchain with new d3dcompiler_47.dll
2021-06-18 thakis mac: Stop using thin archives in lld builds for now
2021-06-18 robliao Add LASTCHANGE_YEAR to lastchange.py for Automatic Year Substitution
2021-06-18 asully Revert "Reland^3 "mac: Temporarily use lld as linker in non-pgo builds""""
2021-06-18 thakis Reland^3 "mac: Temporarily use lld as linker in non-pgo builds"""
2021-06-18 bpastene chromeos: Isolate the test image rather than qemu image for VM tests.
2021-06-18 thakis posix: Remove sysroot_ld_path.sh
2021-06-18 gbeaty Add OWNERS files for controlling CQ usage.
2021-06-17 bialpio WebXR: roll ARCore APK version, revert workaround
2021-06-17 thakis Add a comment to install-sysroot.py saying where the output goes
2021-06-17 tikuta build: remove unused run_under_python2 references
2021-06-17 yyanagisawa ignore rewrapper related configs in build/args/chromeos.
2021-06-17 chromium-autoroll Roll Fuchsia SDK from 5.20210616.2.1 to 5.20210616.3.1
2021-06-17 pkotwicz [Build Android] Add tests for incremental javac
2021-06-17 yyanagisawa rewrapper: use linux config for chromeos host compiles.
2021-06-16 bpastene Revert "chromeos: Don't run lacros-related Tast tests on ash-chrome bots."
2021-06-16 miketaylr Revert back to generating chromium_git_revision.h via version.py
2021-06-16 chromium-autoroll Roll Fuchsia SDK from 5.20210615.2.1 to 5.20210616.2.1
2021-06-16 asully Indexeddb: Enable TSAN on CorruptDBRequestHandler
2021-06-16 rnk Give all Clang maintainers OWNERS in //build for cflag changes
2021-06-16 wnwen Android: Increase dex max heap size
2021-06-16 djean [ios] Move ios deployment target to 13.0
2021-06-16 hidehiko Remove dependency to linux/dri from Lacros.
2021-06-15 svenzheng Lacros tests run in parallel
2021-06-15 rnk Revert "Reland "Reland "mac: Temporarily use lld as linker in non-official non-component builds"""
2021-06-15 chromium-autoroll Roll Fuchsia SDK from 5.20210614.3.1 to 5.20210615.2.1
2021-06-15 hferreiro Merge ash/public/cpp/ash_switches.* into ash/constants/
2021-06-15 thakis Reland "Reland "mac: Temporarily use lld as linker in non-official non-component builds""
2021-06-15 pkotwicz [Build] Change 'cannot find symbol' compile message.
2021-06-15 chromium-autoroll Roll Fuchsia SDK from 5.20210614.2.1 to 5.20210614.3.1
2021-06-14 antoinedesbois Add config for unresolved symbols
2021-06-14 agrieve Update android resources doc: R.java are from androd_library()
2021-06-14 chromium-autoroll Roll Fuchsia SDK from 5.20210613.3.1 to 5.20210614.2.1
2021-06-14 pkotwicz [Build] Pass accurate GN target name to compile_java.py
2021-06-14 mheikal [Android] Enable unused resources removal on bundle targets (relandx2)
(...)
2021-03-30 chonggu [Fuchsia] Rename additional_manifests to additional_manifest_fragments
2021-03-30 chromium-autoroll Roll Fuchsia SDK from 3.20210329.3.1 to 3.20210330.0.1
2021-03-30 weizhong Manual roll of catapult
2021-03-30 chromium-autoroll Roll Fuchsia SDK from 3.20210329.1.1 to 3.20210329.3.1
2021-03-30 rmcelrath Check getActivity method owner in FragmentActivityReplacer
2021-03-30 svenzheng Lacros: ash_clang_x64 uses x11 ozone_platform
2021-03-29 bjoyce Mark UNKNOWN test results as ABORT for result_db.
2021-03-29 chromium-autoroll Roll Fuchsia SDK from 3.20210329.0.1 to 3.20210329.1.1
2021-03-29 pkotwicz Move BuildConfig.template to //build
2021-03-29 thakis Reformat a comment in the win toolchain gn file.
2021-03-29 chromium-autoroll Roll Fuchsia SDK from 3.20210328.3.1 to 3.20210329.0.1
2021-03-29 hidehiko Pass all available FDs from ash-chrome.
2021-03-28 chromium-autoroll Roll Fuchsia SDK from 3.20210328.1.1 to 3.20210328.3.1
2021-03-28 thakis symlink.py: Remove an "unused variable f" lint warning
2021-03-28 chromium-autoroll Roll Fuchsia SDK from 3.20210328.0.1 to 3.20210328.1.1
2021-03-28 chromium-autoroll Roll Fuchsia SDK from 3.20210327.3.1 to 3.20210328.0.1
2021-03-27 chromium-autoroll Roll Fuchsia SDK from 3.20210327.1.1 to 3.20210327.3.1
2021-03-27 chromium-autoroll Roll Fuchsia SDK from 3.20210327.0.1 to 3.20210327.1.1
2021-03-27 chromium-autoroll Roll Fuchsia SDK from 3.20210326.3.1 to 3.20210327.0.1
2021-03-26 chromium-autoroll Roll Fuchsia SDK from 3.20210326.1.1 to 3.20210326.3.1
2021-03-26 chromium-autoroll Roll Fuchsia SDK from 3.20210325.4.1 to 3.20210326.1.1
2021-03-26 chonggu [Fuchsia] Switch web engine and runner tests to use test-cmx fragments
2021-03-26 chromium-autoroll Roll Fuchsia SDK from 3.20210325.2.1 to 3.20210325.4.1
2021-03-25 gangwu Call ClipDescription#isStyledText() in Android S
2021-03-25 hnakashima [Android] Create lookup_dep.py
2021-03-25 bjoyce Change UNKNOWN default status of gtests to CRASH.
2021-03-25 thakis In is_ubsan_security builds, add fsanitize=vptr at gn level, not flag level
2021-03-25 thakis mac: Use llvm-nm when building on a non-mac host
2021-03-25 bjoyce Add additional regex check for crashes.
2021-03-25 chromium-autoroll Roll Fuchsia SDK from 3.20210325.0.1 to 3.20210325.2.1
2021-03-25 rubensf [reclient][nacl] Change nacl executable paths to use '\' on windows.
2021-03-25 hans Add script for analyzing the include graph
2021-03-25 sdefresne Use build/branding_buildflags.h instead of GOOGLE_CHROME_BUILD
2021-03-25 chromium-autoroll Roll Fuchsia SDK from 3.20210324.3.1 to 3.20210325.0.1
2021-03-25 aeubanks Unbreak Linux libFuzzer MSan bot
2021-03-25 chromium-autoroll Roll Fuchsia SDK from 3.20210324.1.1 to 3.20210324.3.1
2021-03-24 dpranke Attempt #4 of "Add test directory -> monorail component metadata to test"
2021-03-24 steveroe [fuchsia] Add test json to warn if Chrome-Fuchsia packages exceed 38.6M
2021-03-24 bsheedy Mark Android emulator as supported config
2021-03-24 akhuang Re-enable precompiled headers on Windows, since it's been fixed in Clang.
2021-03-24 chromium-autoroll Roll Fuchsia SDK from 3.20210324.0.1 to 3.20210324.1.1
2021-03-24 chromium-autoroll Roll Fuchsia SDK from 3.20210323.3.1 to 3.20210324.0.1
2021-03-24 dpranke Update '#!/usr/bin/python' shebangs to '#!/usr/bin/env python'.
2021-03-24 wez [android] Migrate Android toolchain rules to use llvm-{nm|strip}.
2021-03-24 chromium-autoroll Roll Fuchsia SDK from 3.20210323.1.1 to 3.20210323.3.1
2021-03-23 horo Revert "Attempt #3 of "Add test directory -> monorail component metadata."""
2021-03-23 dpranke Attempt #3 of "Add test directory -> monorail component metadata.""
2021-03-23 chonggu [Fuchsia] Remove unnecessary package vars from yaml files
2021-03-23 wez [clang] Use llvm-nm and llvm-strip when using Clang toolchain.
2021-03-23 chromium-autoroll Roll Fuchsia SDK from 3.20210323.0.1 to 3.20210323.1.1

Roll buildtools/ 69cc9b8a3..9c143ace7 (26 commits; 1 trivial rolls)

69cc9b8a3a..9c143ace75

$ git log 69cc9b8a3..9c143ace7 --date=short --no-merges --format='%ad %ae %s'
2021-06-22 joelhockey Revert "Roll src/buildtools/third_party/libc++/trunk/ 8fa879467..79a2e924d (426 commits)"
2021-06-17 ukai Update for roll clang llvmorg-13-init-12576-g643b6407-1 : llvmorg-13-init-12881-g4017d033-1
2021-06-14 ukai Update for roll clang llvmorg-13-init-12491-g055770d5-1 : llvmorg-13-init-12576-g643b6407-1
2021-06-11 ukai Update for roll clang llvmorg-13-init-11649-g4d788fb8-1 : llvmorg-13-init-12491-g055770d5-1
2021-06-09 ukai Revert "update for clang_version=llvmorg-13-init-11999-g50c0aaed-1"
2021-06-07 ukai update for clang_version=llvmorg-13-init-11999-g50c0aaed-1
2021-06-07 ukai fix reclient_cfgs/OWNERS
2021-06-04 ukai update for clang_version=llvmorg-13-init-11649-g4d788fb8-1
2021-06-04 ukai Add OWNERS for buildtools/reclient_cfgs
2021-06-01 ukai Add reclient_cfgs/win-cross-experiments
2021-05-21 rubensf [reclient] Add option for remote links.
2021-05-20 wnwen Android: Fix java_checker ignored directories
2021-05-19 wnwen Android: Fix py3 presubmit compat for java files
2021-05-19 jopalmer [COIL] Change chromium code search type links to use main rather than master for buildtools
2021-05-14 sky cct: calls setClientDataHeaderForNewTab for hidden tabs
2021-05-14 dpranke Reland "Make //buildtools/checkdeps Python3-compatible."
2021-05-12 thakis Revert "Make //buildtools/checkdeps Python3-compatible."
2021-05-12 dpranke Make //buildtools/checkdeps Python3-compatible.
2021-05-03 msavigny [reclient] Fix up reclient nacl wrapper config.
2021-04-30 msavigny [reclient] Fix up reclient c/c++ wrapper config.
2021-03-29 thakis linux: Don't link clang-format against zlib
2021-03-29 thakis linux: Build clang-format in a sysroot
2021-03-29 thakis mac: Don't link clang-format against libz.1.dylib either
2021-03-28 thakis mac: Don't link clang-format against /usr/lib/libncurses.5.4.dylib
2021-03-26 thakis mac: Add clang-format binary that can run on arm.

Created with:
  roll-dep build buildtools

Change-Id: I48668fb6b45df25ba3cd2bc04665a78a9c4399ed
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55620
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-06-23 09:22:22 +00:00
Ryan Harrison 6afd872dfd Revert "Revert "Vulkan: honor bufferImageGranularity the simplest way.""
This reverts commit 7fc0c0519a.

Include fix for issues that caused initial revert

BUG=dawn:950

Change-Id: If1d095d19dd771fd7a608bc54f1bd908562d332c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55682
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-06-22 21:24:29 +00:00
Ryan Harrison 7fc0c0519a Revert "Vulkan: honor bufferImageGranularity the simplest way."
This reverts commit 48183b8f58.

Reason for revert: Part of Dawn->Chromium breakage

BUG=dawn:950

Original change's description:
> Vulkan: honor bufferImageGranularity the simplest way.
>
> Vulkan requires that linear and opaque resources be placed in different
> "pages" of bufferImageGranularity size, as some hardware uses the page
> table to contain some compression bits or other stuff. Make Dawn honor
> this limit by aligning all allocations to bufferImageGranularity. This
> is pretty bad and should be improved later.
>
> Also does some cleanups:
>  - Add kMappableBufferUsage to represent all mappable usages.
>  - Remove the proxy function for resource management from
>    vulkan::Device and call ResourceMemoryAllocator directly.
>  - Use an enum to make the difference between mappable, linear and
>    opaque resources.
>
> This issue was found while doing a change of the memory type selection
> in Vulkan, that started failing some unrelated tests on Nvidia. Without
> knowing the details of the HW or the driver it is really hard to write
> tests, except by copy-pasting a failing test. This is why there is no
> test added in this CL, and instead will rely on tests not failing with
> the follow-up CL.
>
> Bug: dawn:659
>
> Change-Id: Ib7c1f3f1949457e04ca8e23d212dc60af7046213
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/52920
> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
> Reviewed-by: Austin Eng <enga@chromium.org>

TBR=cwallez@chromium.org,senorblanco@chromium.org,enga@chromium.org,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I133f6a44227819bf262ad2b6e8e9d0d7bfaaefaa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: dawn:659
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55642
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2021-06-22 19:00:44 +00:00
Corentin Wallez 48183b8f58 Vulkan: honor bufferImageGranularity the simplest way.
Vulkan requires that linear and opaque resources be placed in different
"pages" of bufferImageGranularity size, as some hardware uses the page
table to contain some compression bits or other stuff. Make Dawn honor
this limit by aligning all allocations to bufferImageGranularity. This
is pretty bad and should be improved later.

Also does some cleanups:
 - Add kMappableBufferUsage to represent all mappable usages.
 - Remove the proxy function for resource management from
   vulkan::Device and call ResourceMemoryAllocator directly.
 - Use an enum to make the difference between mappable, linear and
   opaque resources.

This issue was found while doing a change of the memory type selection
in Vulkan, that started failing some unrelated tests on Nvidia. Without
knowing the details of the HW or the driver it is really hard to write
tests, except by copy-pasting a failing test. This is why there is no
test added in this CL, and instead will rely on tests not failing with
the follow-up CL.

Bug: dawn:659

Change-Id: Ib7c1f3f1949457e04ca8e23d212dc60af7046213
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/52920
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-06-22 13:41:35 +00:00
Yunchao He 987fbed32c Add 3D Texture T2T copy tests on non-zero mip levels
After adding some e2e tests for 3D texture T2T copy on non-zero mip
levels, it turns out that there is a bug in the e2e test itself.
The 3D texture copy splitter works well.

Bug: dawn:547

Change-Id: I51aef7aaca4caf9c86bfb0590eb0288d17731ba5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55144
Commit-Queue: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
2021-06-21 20:09:37 +00:00
Yan, Shaobo 55e08d567f CopyTextureForBrowser(): Support Alpha Ops
This CL adds the support ofwgpu::CopyTextureForBrowserOptions::alphaOps
for CopyTextureForBrowser(), which allows the user to specify the alpha
operations (DontChange, Premultiply, Unpremultiply) when calling
CopyTextureForBrowser().

BUG=chromium:1217153

Change-Id: Idb5dd4482b33f2ada9aafc24380afeb48f2e26bc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54800
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
2021-06-21 10:05:37 +00:00
Ben Clayton e4f4a3711f wgsl: Disable broken tests
ShaderRobustnessPerf:
SPIRV-Cross apparently generates incorrect code for MSL and OpenGL, when
attempting to initialize workgroup memory. Disable these tests when not
running with use_tint_generator.

D3D12DescriptorHeapTest:
The UBO layout for a mat2x2 was incorrect, but the test relied upon this.
Temporarily disable the test so we can roll the fix.

Bug: dawn:945
Bug: dawn:946
Change-Id: I810249b26a8a0b583796c0ba63b8a703eb9540e4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55248
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-21 07:55:57 +00:00
Zhaoming Jiang fdc35e604e Emit tint warning when creating shader module
Add the formatted tint messages in OwnedCompilationMessages, which will be emit after creating the shader module succeeds of fails.
This patch also change the compilation messages handling in creating shader modules. Now the compilation messages are separated from sparseResult, and should be handled manually. A new method, ShaderModuleBase::InjectCompilationMessages, is introduced to move a given OwnedCompilationMessages into the shader module, and emit the formatted tint errors and warnings. This method should be called explicitly on a valid or error shader module.

Bug: dawn:753
Change-Id: I5825186c6d9c4aa7725aebd0c302bfce5e1f37cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/53890
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-18 13:29:39 +00:00
Corentin Wallez 3a3952c4f5 Suppress ShaderRobustnessPerf when using Tint + FXC
Also tighten previous suppressions to only apply when using the Tint
generator.

TBR=bclayton@google.com

Bug: tint:904
Change-Id: I22210227c428eb38901904966ec2c3bd70ce607b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55200
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-06-18 08:52:12 +00:00
Yunchao He aee22d142b Implement copies b/w 3D and 2DArray textures on D3D12
Copies between 3D and 2DArray textures need to be done depth/array
slice by slice via CopyTextureRegion() API on D3D12 because this
API can copy one single subresource every time.

However, if both src and dst textures are 3D texture, we can copy
all depth slices in one shot, which is a fast path for this
copy scenario.

Bug: dawn:547

Change-Id: I950ed58319fb0f30dfc8a2de3e57e8a64406f7e4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55140
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
2021-06-18 07:44:12 +00:00
Corentin Wallez b86e45f8ca Omit types in most WGSL `var` statements.
Bug: None
Change-Id: Id6ed10d98a550d912784b688c5473f67f1889a8c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54882
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-06-17 21:36:11 +00:00
Ben Clayton fecd5a5977 wgsl: Suppress all VertexFormatTests when using FXC
Disabling the one test clearly wasn't enough

Bug: tint:904
Change-Id: I23f448d2f3028fff13e4eb406b08a7175166ea9d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55100
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Sarah Mashayekhi <sarahmashay@google.com>
Reviewed-by: Sarah Mashayekhi <sarahmashay@google.com>
2021-06-17 20:54:15 +00:00
Corentin Wallez 95aa7c5b29 Add SetIndex/VertexBuffer offset argument alignment constraints
The vertex buffer alignment in particular is helps make the
implementation of programmable pulling much easier on Metal since the
vertex data will be able to be represented as array<u32>.

Bug: dawn:805
Change-Id: I2bf2742db3b8fa478be620c892925b8b75dc514c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54659
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2021-06-17 17:48:45 +00:00
Ben Clayton 36edf8d850 wgsl: Fixes for new validation failures
Values of array and matrix can now only be indexed by a constant value.
Dynamic indexing requires the value to be held in memory.

See: https://github.com/gpuweb/gpuweb/issues/1782

Bug: tint:867
Change-Id: I2b9ad6e40fc8121e7aca3a71c190639b39b0b862
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54652
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
2021-06-17 11:25:09 +00:00
Yunchao He 5b6c1ebce7 Enable CopySplitTests unittests for 3D texture copy splitter on D3D12
CopySplitTests unittests were added for 2D texture copy splitter.
Now that we have added 3D texture copy splitter recently, it's time
to enable these unittests for 3D texture copy splitter.

This change enables the CopySplitTests unittests for 3D texture copy
splitter, with some fixes:
  - Footprint depends on bufferOffset and copySize, not bufferSize,
  - Copy regions overlap validation incorrectly added 1 extra pixel,
  - For 2D texture copy regions, there is one empty row at most in
    a copy region. However, it is not true for 3D texture copy
    regions when we are copying the last row of each slice.

It also adds a few more tests for 3D texture copy splitter when the
copySize.height is 1 and there is an empty row in the copy region.

Bug: dawn:547

Change-Id: I5381993ed5c656da0f82395e7c7bccc54d784767
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54500
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
2021-06-17 03:22:48 +00:00
Ben Clayton cd417bc9a1 Disable test where FXC emits bad output
Bug: tint:904
Change-Id: Ibefd0d83914e39b5a2db942153f183e6f334fcc8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54880
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2021-06-16 20:18:08 +00:00
Li Hao b936d23364 Implement internal storage for buffer usage and buffer binding type
In the timestamp internal pipeline, the ResolveQuery buffer cannnot be
binded as Storage buffer in binding group layout due to it has not
Storage usage.
Add InternalStorageBuffer for buffer usage and
InternalStorageBufferBinding for buffer binding type, make the
QueryResolve buffer implicitly get InternalStorageBuffer and only
compatible with InternalStorageBufferBinding in BGL, not Storage buffer
binding type.

Bug: dawn:797
Change-Id: I286339e703e26d3786c706ded03f850ca17355fb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54400
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2021-06-16 14:33:27 +00:00
Ryan Harrison 8c584a1f4c Make usage of overridable constants a validation error
This feature is not yet implemented in Tint and it not planned for OT.

BUG=dawn:799

Change-Id: Ib97dcd39e8ae956aa6fdc4cc1b148ec7f101b061
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54280
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-14 19:07:17 +00:00
James Price 6681114e5e Update usage of arrayLength() intrinsic
The runtime array parameter is now passed as a pointer, instead of by
value.

Change-Id: I632814d2a2890dbe4476c2b01023a5ff8de42d21
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54485
Auto-Submit: James Price <jrprice@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-06-14 08:39:02 +00:00
Corentin Wallez 5a53eb3113 Validate that DS attachment must cover all aspects of the texture.
It isn't clear if this should be a limitation of the WebGPU
specification. Until further investigation is done, disallow it in Dawn
to avoid undefiend behavior.

Bug: dawn:812
Change-Id: Iab8208f1ea479263b08ede41374ce1a680ce191e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/53387
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-06-11 14:25:29 +00:00
Ben Clayton 6133e5cf3d Wrap call stmts with non-void rets, with ignore()
We have a new validation rule that states that all calls to functions that return a value must use that value. ignore() is the escape hatch.

Bug: tint:886
Change-Id: I9ab8d288b3c54ad4b7e46feda129c36c9136c20b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54200
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-06-11 14:01:29 +00:00
Yunchao He 74f0c02044 Refactor CopySplitTests.cpp in unittest D3D12
The log output code snippet duplicates again and again in this test.
So this change put it into a function and all tests can call that
function without duplicated code. It names the new function as
DoTest(), which calls DoTest2D() (the original DoTest()). The new
function can add DoTest3D() into the test in order to test 3D
texture splitter if needed and all tests don't need to change
anything.

It also removes TexelBlockInfo instance in DoTest2D(), which provide
no new info, just as Origin3D instance (for origin) and Extent3D
instance (for copySize).

Bug: dawn:547

Change-Id: I668682c5bdbae56dcdc8cf0e232f27233e17b883
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54221
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yunchao He <yunchao.he@intel.com>
2021-06-10 17:04:04 +00:00
Austin Eng f8a0f82fad Move zero-size copy skips from the frontend to the backend
Bug: chromium:1217741
Change-Id: Ib4884b5aa80124ed9da48262fcae11cf6d605034
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/53883
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
2021-06-10 02:40:18 +00:00