Commit Graph

75 Commits

Author SHA1 Message Date
Corentin Wallez bd8de5d2a4 Add MetalRenderR8RG8UnormSmallMipToTempTexture workaround
This workaround replaces the toggle that forbids creating mipmapped
R8Unorm and RG8Unorm textures on Metal. Instead it adds a Metal render
pass workaround that renders to a temporary texture under certain
conditions, then copies back to the correct mip level.

The texture lazy-clearing code is also changed to use the helper that
does workarounds for Metal render passes.

A test is added that triggers the issue with a small amount of code, but
more extensive coverage is left to the CTS. For example texture_zero
tests caught multiple issues during the creation of this CL.

Bug: dawn:1071

Change-Id: I7ef1151524e71e5a9a8e8f5205d9b554bee438b3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87864
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-28 19:00:53 +00:00
Ben Clayton e119ff452a Roll third_party/webgpu-cts/ 900765392..21af43c62 (10 commits)
Update expectations and ts_sources

9007653926..21af43c62a
 - 21af43 wgsl: Implement f32 `exp` test (#1315)
 - 0f86e0 Remove redundant information from unittest names (#1317)
 - 23dab0 wgsl: Stub acosh builtin tests. (#1312)
 - 7cea4a wgsl: stub distance builtin tests (#1311)
 - 8829c3 wgsl: stub length builtin tests (#1310)
 - 7eec30 wgsl: stub tests for atanh builtin. (#1314)
 - e442a7 wgsl: Stub asinh builtin tests (#1313)
 - 969db1 Implement OneULP and related ULP functions (#1218)
 - 7845e2 wgsl: Stub asin builtin tests (#1309)
 - 8f8ab3 Sync reserved words to spec. (#1308)

Created with './tools/run cts roll'

Change-Id: I6f549884d045b80b63a826a4282faa26aa992ec4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/88260
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-28 13:32:23 +00:00
Corentin Wallez 144a4fb945 Suppress a flake for RGBA32Float zero init on Intel.
Bug: None
Change-Id: I53956baf1fc9fcd5b02e8f8069229bc86ec386dc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/88220
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
2022-04-27 18:04:33 +00:00
Corentin Wallez 46bef8aae6 Tighten the suppression for texture_zero failures.
It is failing for a single format when trying to copy to a buffer
because the depth-specific format for depth23unorm-stencil8 buffer is
depth24plus which is not copyable.

Bug: dawn:1388
Change-Id: I034145bf55d42403ded23b1b9acf974d85770d42
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87701
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-04-27 11:28:20 +00:00
Ben Clayton 00e845cfdf Roll third_party/webgpu-cts/ 45d2ccd25..88c034819 (4 commits)
Update expectations and ts_sources

45d2ccd250..88c0348191
 - 88c034 ShaderValidationTest: remove string overload (#1184)
 - 93932e Split WGSL test files (#1183)
 - 40b847 Minor comment fixes
 - 6f46b8 Cleanup old WGSL test files. (#1181)

Created with './tools/run cts roll'

Change-Id: I35ea8385af6ddc09c43833d40395c80f7d060002
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87703
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-23 01:11:22 +00:00
Austin Eng 390b5a2176 Generalize expectation for recently added suppression.
intel-0x3e92 was not added, but intel-0x5912 was - leading
to flaky CQ rejection depending on what bot happened to run
the task.

Generalize this expectation since it fails on all platforms
anyway.

Bug: dawn:1387
Change-Id: Iccd4806de456a817edf538041445ee2ac93099e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87675
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 08:10:51 +00:00
Austin Eng 81a3c7cbdf Add back fail expectation on CTS Windows x86
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel
Change-Id: I229846e8a9a4e8b047f23fc5b9134691022c96a9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87611
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-22 02:39:51 +00:00
Ben Clayton 66b70ec1a0 Roll third_party/webgpu-cts/ a06666e00..45d2ccd25 (3 commits)
Update expectations and ts_sources

a06666e000..45d2ccd250
 - 45d2cc Fixed TS errors
 - 5eacfb Take new createView() dimension default logic into account
 - cbdcbd Explicitly destroy devices created by requestDevice_limits

Created with './tools/run cts roll'

Change-Id: I701bc9e6fa6b1996b1ed40b08766cc9dedaf20d8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87621
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-21 23:18:10 +00:00
Ben Clayton 931a4ddb1c Update WebGPU CTS expectations
• Remove a number of expectations that are no longer needed.
• Change a number of expectation tags to be more specific.
• Sort the expectations per chunk.
• Add a few more wide-wildcard 'Failure' rules for tests that commonly flake.

Bug: dawn:1342
Change-Id: I0e23cd546f7ab54a5720e24c52e3782b5df6b99f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87520
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-21 14:58:23 +00:00
Yunchao He 12d45e2068 Update webgpu-cts/expectations.txt
Fixed: dawn:1289
Change-Id: I5229653973990550d6c867e17100bf83de16a6e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87500
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-21 02:55:55 +00:00
Enrico Galli 45ec7c3528 D3D12: Duplicate first/baseVertex on Draw[Indexed]Indirect
Adds support for non-zero first/baseVertex on Draw[Indexed]Indirect by
duplicating the first/baseVertex indirect parameter onto a root
constant in the indirect buffer.

Change-Id: I280149065179806d3e57b07f1a396f9e2e4e8fcb
Bug: dawn:548
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84240
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Enrico Galli <enrico.galli@intel.com>
Auto-Submit: Enrico Galli <enrico.galli@intel.com>
2022-04-21 02:25:35 +00:00
Jiawei Shao 93a2bed032 Only allow creating 2D textures with RenderAttachment usage
BUG=dawn:1364
TEST=dawn_unittests

Change-Id: I49cdeeac8b951c3715211fc3b3b71934a19a6e64
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86622
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
2022-04-20 04:01:39 +00:00
Shrek Shao 6a3373e419 Fix a webgpu-cts crbug ticket
Bug: dawn:1325
Change-Id: I204fd3777458871ef7d7c398a2023388b33f0aa5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87301
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
2022-04-19 22:22:20 +00:00
Austin Eng 89d6a1f376 Add D3D12 UAV barriers between multiple storage texture usages
Fixed: dawn:1370
Change-Id: I395b3e6e2506608ca4aefdbcef18443b90ca75ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87302
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-19 20:51:40 +00:00
Corentin Wallez 344e001e6b Triage some of the webgpu-cts/expectations.txt
Bug: dawn:1111, dawn:1289, dawn:548

Change-Id: I4f867676c1127e1e131e19180f0de41745cea3e0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86783
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
2022-04-19 15:40:15 +00:00
Jiawei Shao e1aa107ab3 Roll WebGPU-CTS
BUG=dawn:1364, dawn:1376

Change-Id: I5e4c5568572892129e196cb6ae73d0230c6dec5b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87201
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-04-19 12:01:04 +00:00
Corentin Wallez 9676fc66e8 Remove some WebGPU CTS expectations that are passing.
Change-Id: I2ca7e8aae1b3bf83c8ca30de5496b273ea9e5700
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86782
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-04-19 07:25:54 +00:00
Austin Eng b6d2dea049 Skip tests that crash deterministically on Linux
These are known crashes from the old WebGPUExpectations. Running
them is a waste of resources.

Bug: chromium:1309194, chromium:1234041, chromium:1236130, chromium:1315987
Change-Id: I7bbf70d0bc5abd09ebf47e2e65521d4a4fa5363e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86844
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-15 02:41:01 +00:00
Ben Clayton d9726b23cd Roll CTS and update expectations
Roll CTS to 9861f5e1d92559c03a8d769117124de97adc47c4
Update ts_sources.txt
Regenerate expectations

Change-Id: Ib422e2ee4d2e0c6307f06d0029eaed737fc5d2b9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86880
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-14 14:54:30 +00:00
Corentin Wallez 8b8b641326 Roll third_party/webgpu-cts/ dcba3ac6b..5e83d8349 (25 commits)
dcba3ac6b8..5e83d8349b

$ git log dcba3ac6b..5e83d8349 --date=short --no-merges --format='%ad %ae %s'
2022-04-13 cwallez Reduce the length of subresource test names (#1164)
2022-04-13 cwallez zero_init: add constant zero to prevent driver unrolling loops. (#1163)
2022-04-13 jiawei.shao Add validation,resource_usages,texture,in_render_misc:* - Part II (#1161)
2022-04-13 jiawei.shao Add validation,resource_usages,texture,in_render_misc:* - Part I (#1157)
2022-04-11 enga Test view format reinterpretation (#1126)
2022-04-11 litherum Only 2D textures can be marked as render targets (#1155)
2022-04-08 cwallez operation,image_copy: Add support for depth16unorm (#1154)
2022-04-08 cwallez image_copy,mip_levels: reduce the mip level count. (#1151)
2022-04-08 cwallez depth_compare_func: Don't use 0.5 as depth16unorm rounds either way (#1152)
2022-04-08 cwallez Fix tests trying to copy aspects of depth-stencil textures. (#1146)
2022-04-08 cwallez depth_clip_clamp: only set stencilLoadOp and friends when needed. (#1153)
2022-04-08 cwallez Fix validation errors with depth/StencilLoad/StoreOp set when not allowed. (#1145)
2022-04-08 enga Shorten test and param lengths in resource_usages,texture,in_render_common:* (#1144)
2022-04-08 jiawei.shao Add validation,resource_usages,texture,in_render_common:* - Part V (#1150)
2022-04-06 cwallez val,buffer,create: Buffer sizes don't have to be multiple of 4. (#1140)
2022-04-06 cwallez image_copy: Ensure bufferOffset % 4 == 0 for depth-stencil. (#1139)
2022-04-06 jiawei.shao Add validation,resource_usages,texture,in_render_common:* - Part IV (#1132)
2022-04-05 enga Fix infinite recursion in CopyExternalImageToTexture.spec.ts (#1143)
2022-04-05 cwallez Use globalThis instead of self. (#1141)
2022-04-05 cwallez val/copyT2T,format_compat: Don't assume compressed is always 4x4 (#1134)
2022-04-05 cwallez Fix DSAttachment load/store ops being specified when disallowed. (#1136)
2022-04-05 cwallez Fix test of BGL binding limits to correctly check limits (#1137)
2022-04-04 cwallez Fix a validation error caused by WriteTexture bytesPerRow: t.width (#1133)
2022-04-04 cwallez Add unicode tests for entryPoint matching. (#1131)
2022-04-04 cwallez writeBuffer: an unaligned bufferOffset is a validation error. (#1129)

Created with:
  roll-dep third_party/webgpu-cts

Change-Id: I048afcaf3d33bcd67401412bf235181013ebf6d2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86533
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-13 18:52:46 +00:00
Austin Eng aef6389be9 Add WebGPU Adapter tags to the expectations file
So we can begin running the CTS on SwiftShader and add targeted
suppressions when necessary.

Bug: chromium:1315703
Change-Id: Ic68e43ad0d79830b3ef5559ea1de0133d48ea43c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86626
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Austin Eng <enga@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-13 16:49:56 +00:00
Austin Eng 5752bbf63c Mark webgpu:shader,execution,shader_io,compute_builtins:inputs:* failing on Windows x86 NVIDIA
Bug: tint:1500
Change-Id: I6230e8ba1b8b7076a7276de207cd72729233435f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86480
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-12 04:36:10 +00:00
Ben Clayton 2bdabc748f Roll CTS and update expectations
Roll CTS to dcba3ac6b819abb0920e589ca1809ae5b5f87119
Update ts_sources.txt
Regenerate expectations

Change-Id: Ifa0cae3fa1abf9da9e4fbd63acf9cefe2683f50d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/85560
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-11 18:38:51 +00:00
Austin Eng db68059da8 Unskip some CTS tests using the new harness
Bug: chromium:1306640
Change-Id: I1dd1d60490fdf2670d4a7ac189065eadf002e3cb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84781
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-28 18:13:22 +00:00
Austin Eng 1cdea90f7b Add CTS telemetry harness support
Migrates harness support files added in
https://chromium-review.googlesource.com/c/chromium/src/+/3541414
into Dawn's repo.

Tested in
https://chromium-review.googlesource.com/c/chromium/src/+/3537743

Bug: chromium:1306640
Change-Id: I3000b1223219a1da293af910bf442570b70b7c92
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84043
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-03-24 00:21:55 +00:00