Commit Graph

10109 Commits

Author SHA1 Message Date
dawn-autoroll 080a43a60e Roll vulkan-deps from 9f855ce7b96f to 6aa2e029c7df (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/9f855ce7b96f..6aa2e029c7df

Changed dependencies:
* spirv-cross: 6d3518e238..1ad6006130

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-dawn-autoroll
Please CC bclayton@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: bclayton@google.com
Change-Id: I195ecde70fb0f62f5fe896110609845b55687a79
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102820
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-19 18:23:01 +00:00
Alastair Donaldson b7da8f612e Fix out-of-bounds access in regex fuzzer
Fixes the regex fuzzer so that when searching for an operator to
replace, it takes account of the fact that the string being searched may
be very small, avoiding an issue where unsigned integer underflow would
occur.

Bug: crbug.com/1359193
Change-Id: I653a20429dc20385a64f8d684c81d023702458e6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102641
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: Alastair Donaldson <afdx@google.com>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
2022-09-19 15:47:32 +00:00
Ben Clayton 4f8ed34b94 Roll third_party/webgpu-cts/ dec4d77ee..0fee76f32 (3 commits)
Update:
 - expectations.txt
 - ts_sources.txt
 - resource_files.txt
 - webtest .html files


dec4d77ee3..0fee76f32e
 - 0fee76 Overrides: add operation tests for compute pipeline (#1842)
 - 120c34 Add the buffer_dynamic_offsets test to setBindGroup.spec.ts (#1849)
 - fc6864 Add pipeline overridable constants validation tests (#1830)

Created with './tools/run cts roll'

Change-Id: I31e8afdfdb5fcfbf55682f69b67af1e2ca78d247
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel,linux-dawn-rel,mac-dawn-rel,win-dawn-rel
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102643
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-19 15:00:01 +00:00
Antonio Maiorano e14a27bc7f tint: remove LoopToForLoop and FoldTrivialSingleUseLets transforms for HLSL and GLSL
Change-Id: I18c807b2449dc2842cb9dbfaeba98dae640d2355
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102621
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-09-19 14:05:21 +00:00
Dawn Autoroller d6afca1955 Roll ANGLE from 493bab09b564 to d63fdfa55386 (1 revision)
493bab09b5..d63fdfa553

2022-09-19 shaobo.yan@intel.com Include <windows.h> to build vulkan only ANGLE on Windows

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: I8b4909be7a086f0b3104be5236a00ce8c2986720
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102760
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-19 06:13:51 +00:00
Ben Clayton aad2e9c0b5 tools/cts: Add `cts validate`, improvements & fixes
• Add `cts validate` command used to check for expectation collisions.
  Can be used as a presubmit check.
  This is more tightly checked than the previous logic, as this works on just
  the expectations, instead of results.

• Fix an issue where the test result reduction could introduce collisions with
  'Skip' expectations.
  To fix this, the update process first adds 'consumed' results for the skipped
  tests, preventing test tree reduction for that part of the tree.

• Fix a bug in the generation of 'New failures' and 'New flakes' which produced
  more expectations than was necessary.
  The issue here was that the tree roots could contain overlaps, and roots could
  be processed before sub-trees, resulting in inefficient expectations.

• Fix collisions in the expectations file, and update with results from
  the most recent roll.

Change-Id: I7b64553408998fb4416458ce564fc49c8f6d4d07
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101860
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-09-17 19:30:29 +00:00
Dawn Autoroller 9ab81268ff Roll ANGLE from b45d30638b3e to 493bab09b564 (1 revision)
b45d30638b..493bab09b5

2022-09-16 chris@rive.app Add an ShPixelLocalStorageType enum

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: I760dfd5b15bec651372e4e7f79259435d26f789b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102720
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-17 12:45:29 +00:00
dawn-autoroll 697917cb43 Roll vulkan-deps from d01707e58694 to 9f855ce7b96f (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/d01707e58694..9f855ce7b96f

Changed dependencies:
* spirv-tools: 272e4b3d07..91c29a197f
* vulkan-validation-layers: a4fc6748d9..8f5b321d28

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: Id8aa10d48013114f0534546bea984f0db92dd382
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102582
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-17 04:22:59 +00:00
Ben Clayton 90b29e500a tint/transform/std140: Correctly handle nested / bare matrices
Fixed tint:1673
Fixed tint:1674

Change-Id: Ifa5d2a69131cc1e4679d4d43143f857c7ba46dbd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102640
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-17 01:47:59 +00:00
Ben Clayton 84b43d61fa tint/writer: Handle unnested, uniform matCx2 matrices
Shuffle the transform orders to ensure that these are embedded in a structure before running the Std140 transform.

Add more end-to-end tests for these.

As pointed out in tint:1673, arrays of matrices are not correctly decomposed by the Std140 transform.
This will be addressed by a later change.

Bug: tint:1673
Change-Id: I47c93e458ff48578922d576819792e8ed3a5723c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102541
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Zhaoming Jiang <zhaoming.jiang@intel.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2022-09-17 00:38:19 +00:00
Dawn Autoroller 2bfd9f8c83 Roll ANGLE from 0630644c2329 to b45d30638b3e (1 revision)
0630644c23..b45d30638b

2022-09-16 jmadill@chromium.org infra: Update Perf bot config names.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I547bb8b96fbb2283d3263f8d22a74a878eed30ca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102680
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 23:52:22 +00:00
Austin Eng 91fc1fd57e Roll third_party/webgpu-cts/ 5e70787c4..dec4d77ee (6 commits)
Update:
 - expectations.txt
 - ts_sources.txt
 - resource_files.txt
 - webtest .html files


5e70787c4d..dec4d77ee3
 - dec4d7 Implement `normalize` f32 tests (#1841)
 - 691143 not_lost_on_gc: use assertNotSettledWithinTime instead of raceWithRejectOnTimeout (#1844)
 - 087838 fix dev server for float16.js (#1843)
 - 372985 Add 'buffer,resource_binding_size' to createBindGroup.spec.ts (#1826)
 - 399c52 Add RENDER_ATTACHMENT usage in createBindGroup:multisampled_validation:* (#1839)
 - d33144 Fix f16 hex literal testcases of having suffix "h" without "p" (#1831)

Created with './tools/run cts roll'

Change-Id: Iaaf8882e9acfe7612c060cf1f81b2c4b52b9733c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102600
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Shrek Shao <shrekshao@google.com>
2022-09-16 20:37:58 +00:00
David Neto a3f2bf6c60 spirv-reader: phis as a particular case of hoisting to a var
We already compute the "first" and "last" basic block that
uses a value, so we could know when to hoist a value into
a var declaration. You have to do this sometimes to make
sure all uses are in scope of the declaration.

Until now we tracked Phis with an entirely different mechanism.
But there are cases which broke down. That's what happens
in crbug.com/tint/1649.

Additionally, GraphicsFuzz cases generarte similar weirdness.

Also, be more careful about ensuring that the assignments
generated to feed phis behave as if they occur in parallel.
Within a single batch of such assignments, generate and
use intermediate let-declarations for phis that that batch
will overwrite.

Also, unwrap-references when rectifying the signedness of
binary operators.

Skip tests that fail due to crbug.comt/tint/98:
  test/tint/bug/tint/749.spvasm.*

Fixed: tint:1649
Change-Id: I7314c351b74a10bfa9a18011f3d80a520568011c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101220
Auto-Submit: David Neto <dneto@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 20:18:39 +00:00
Antonio Maiorano ebc5bba671 tint: const eval of binary XOR
Bug: tint:1581
Change-Id: I5605426f0c4b9447ce770092de4ab2f639d0218d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102580
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 17:16:38 +00:00
Austin Eng d41981b5cc Deprecate sampleType "float" with multisampled textures
Bug: dawn:1540
Change-Id: I27608cc88c677205a2a41a5b041d2360f43d14f9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102620
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Shrek Shao <shrekshao@google.com>
2022-09-16 16:33:28 +00:00
dawn-autoroll a9a36e0641 Roll vulkan-deps from fc12bd106db5 to d01707e58694 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/fc12bd106db5..d01707e58694

Changed dependencies:
* vulkan-validation-layers: 7bc6e19210..a4fc6748d9

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I86b5a48abc902611e7228b61f91dbcf7172b7432
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102581
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 15:16:28 +00:00
Li Hao 92182412b8 Implement timestampWrites on Metal
Metal configures the query set and query index for the beginning and end
of passes in pass descriptor when beginning a pass encoder, so we need
to record all timestamp writes information in BeginXxxPassCmd. For the
platfroms that support timestamp query, it must support timestamp write
at command boundary or stage boundary, if the stage boundary is
supported, use sampleBufferAttachments API for Metal implementation,
otherwise simulate timestamp write using sampleCountersInBuffer API
after begining a pass and before ending a pass.

Bug: dawn:1250
Change-Id: I462cb05a0102521cd2df4db3ac6f71863419b933
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/93940
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2022-09-16 15:00:19 +00:00
Austin Eng ba68620f6f Do not memcpy transparent wire structs on serialization
This removes a serialization optimization where structs could be
memcpy'ed. memcpy is still used for deserialization of structs.

Structs may contain padding bytes which when copied can leak
uninitialized data across a trusted boundary. In Chrome, this
means previously-written or uninitialized bytes in the GPU process
could leak into the Renderer process.

In the future, we may be able to bring this back by introducing
a concept of safe-to-memcpy structs, or by forking the code so
that Renderer->GPU process uses the unsafe memcpy, and
GPU->Renderer uses to the safe member-by-member version.

An alternative might be to ensure that everything returned from
the WebGPU API has initialized padding, but this invariant is not
trivial to guarantee.

Fixed: chromium:1359098
Change-Id: I91151251d1ab999e0f5552e1efccc472e451cc10
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102461
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-09-16 14:14:08 +00:00
Dawn Autoroller 1fe74e5c0b Roll ANGLE from f54e7ee69c33 to 0630644c2329 (6 revisions)
f54e7ee69c..0630644c23

2022-09-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from f537c423b7df to bf1e383b4aa1 (536 revisions)
2022-09-16 antonio.caggiano@collabora.com Vulkan: Add supportsPresentation feature
2022-09-16 m.maiya@samsung.com Vulkan: Fix a cornercase bug when dynamically loading AHB APIs.
2022-09-15 aeubanks@google.com Fix -Wdeprecated-copy-with-user-provided-copy
2022-09-15 syoussefi@chromium.org Infra: Run GLES1 conformance tests on Linux
2022-09-15 chris@rive.app Reland "Generate stubs for ANGLE_shader_pixel_local_storage"

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: If05c53e809020adb62bbc33380dcb928b6ea4b6e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102560
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 10:17:08 +00:00
Austin Eng 505e1a9368 Revert "Make it invalid to use sampleType "float" with multisampled textures"
This reverts commit 9b2f273d36.

Reason for revert: Breaking change needs deprecation period.

Original change's description:
> Make it invalid to use sampleType "float" with multisampled textures
>
> Fixed: dawn:1540
> Change-Id: I31f197d802c20ed7e6ef2ae00d4e107ab6f94278
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102420
> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
> Kokoro: Kokoro <noreply+kokoro@google.com>
> Commit-Queue: Austin Eng <enga@chromium.org>

TBR=cwallez@chromium.org,enga@chromium.org,shrekshao@google.com,noreply+kokoro@google.com,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I5ac4b5691b0c4fb0ce76223c1997855e1b3485f3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102500
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
2022-09-16 01:14:28 +00:00
Jiawei Shao 233d64066c Make the validation on inter-stage shader variables match latest WebGPU SPEC
This patch updates the validations on the inter-stage shader variables to
match the latest WebGPU SPEC (in chapter "validating-inter-stage-interfaces").

With this patch the below validation tests in WebGPU CTS will pass:
- render_pipeline,inter_stage:max_shader_variable_location:*
- render_pipeline,inter_stage:max_components_count,*

Fixed: dawn:1448
Test: dawn_unittests
Change-Id: I3e4d98f03ec18e5d1642a4d7ecd3eed1b7ae04d0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102104
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-16 00:30:38 +00:00
Austin Eng 43655314ee Roll vulkan-deps from fb10489972ad to fc12bd106db5 (12 revisions)
Also, set vvl_spirv_headers_dir build override to fix the build.

https://chromium.googlesource.com/vulkan-deps.git/+log/fb10489972ad..fc12bd106db5

Changed dependencies:
* spirv-cross: f6ca617825..6d3518e238
* vulkan-headers: 88ebcb08cb..5177b119bb
* vulkan-loader: 2f87e2b3a5..3090fc12bd
* vulkan-tools: f7dff1f7dd..5b4f221819
* vulkan-validation-layers: c53a4cb4e0..7bc6e19210

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Change-Id: Ie23bc22b4981e7b48082c0b43975e8805bfd2ff9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102463
Auto-Submit: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
2022-09-15 23:04:18 +00:00
Austin Eng 9b2f273d36 Make it invalid to use sampleType "float" with multisampled textures
Fixed: dawn:1540
Change-Id: I31f197d802c20ed7e6ef2ae00d4e107ab6f94278
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102420
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-09-15 23:03:38 +00:00
Loko Kung 18dfc4797c Track TextureViews in Textures so that they can be chain-destroyed.
- Adds Prepend function to LinkedList to avoid directly using the
  insert functions on the LinkNodes. (And tests for this as well.)
- Adds ApiObjectList class for tracking lists of objects for
  destruction.
- Renames and virtualizes some tracking interfaces so that they can be
  overriden for the TextureView/Texture cases.
- Removes explicit destroying of TextureViews from Device since
  destroying Textures will destroy TextureViews now.

Fixed: dawn:1355
Change-Id: I3522383ea7724d6e41ac0c805793a6c34d9bec27
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101762
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-15 21:06:51 +00:00
Dawn Autoroller 9c07d3c52c Roll ANGLE from 8c45e3c4173c to f54e7ee69c33 (3 revisions)
8c45e3c417..f54e7ee69c

2022-09-15 j.vigil@samsung.com Vulkan: Add Native ID to GBM configs
2022-09-15 grt@chromium.org [fuchsia] Remove use_cfv1 from uses of test() GN template
2022-09-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from dddcaa9c9b82 to f537c423b7df (553 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I9bcbffe1b112c2d126a951706b58ce55e7edc464
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102440
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-15 20:41:50 +00:00
Antonio Maiorano 6ab02659de tint/spirv-reader: add support for GLSLstd450MatrixInverse
Bug: tint:1670
Change-Id: I2faaec03117a00f55624c9a51419eb79cc6da40f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102261
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-09-15 17:22:25 +00:00
Jiawei Shao ee1996ba9e Enable validation tests about createBindGroupLayout:storage_texture,*
This patch enables the below validation tests in WebGPU CTS after a
fix in chromium:

- webgpu:api,validation,createBindGroupLayout:storage_texture,*
- webgpu:api,validation,createBindGroupLayout:visibility,
  VERTEX_shader_stage_storage_texture_access:*

Fixed: chromium:1363484
Change-Id: If23dc242f0c38dec4e11de0fd8434ab32e0822f9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102341
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2022-09-15 14:07:49 +00:00
Dawn Autoroller c74322af4a Roll ANGLE from 09f8fbe8d996 to 8c45e3c4173c (6 revisions)
09f8fbe8d9..8c45e3c417

2022-09-15 chris@rive.app Revert "Generate stubs for ANGLE_shader_pixel_local_storage"
2022-09-14 cclao@google.com Vulkan: Add end2end test for fbo with no attachment
2022-09-14 chris@rive.app Generate stubs for ANGLE_shader_pixel_local_storage
2022-09-14 cclao@google.com Vulkan: Use DontCare if attachment is invalidated
2022-09-14 chris@rive.app Delete FramebufferPixelLocalClearValue{f,i,ui}vANGLE
2022-09-14 romanl@google.com Move Android.bp change from internal http://ag/18177202 to aosp

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I20365d4289cc4fd34d03cf1b3bf1236c785775a6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102381
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-15 06:59:58 +00:00
Austin Eng 44754c529f Revert "Remove code to set Vulkan backend debug labels"
This reverts commit c1f5112462.

Reason for revert: underyling issue in crbug.com/dawn/1539 fixed

Original change's description:
> Remove code to set Vulkan backend debug labels
>
> This is hitting a memory corruption issue inside the NVIDIA driver.
> Speculatively delete the code in the Vulkan backend until further
> analysis finds the root cause.
>
> Bug: dawn:1539
> Change-Id: Ie7bf5bed31976da5f13325c81033e787c4d376b9
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102100
> Reviewed-by: Loko Kung <lokokung@google.com>
> Kokoro: Kokoro <noreply+kokoro@google.com>
> Commit-Queue: Austin Eng <enga@chromium.org>

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: dawn:1539
Change-Id: Ic1e4c4ad05abd6f2e244e4a5364bf54e6288cffb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102107
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
2022-09-14 18:36:18 +00:00
Austin Eng 945e2642d6 Fix race with FencedDeleter and VkShaderModule labels in async creation
FencedDeleter does not need to be used at all since we were deleting
a yet-to-be-used VkShaderModule.

Also, set the VkShaderModule label before cache deduplication since to
avoid a race where the VkShaderModule is in use by another thread.
The other thread may also be setting the label, or using it in a
pipeline creation.

Bug: dawn:1539
Change-Id: I5e3d7ce214c4c089c9cc3272f373aa8233017965
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102105
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Loko Kung <lokokung@google.com>
2022-09-14 18:13:17 +00:00
Dawn Autoroller e09da52837 Roll ANGLE from a902eea901d0 to 09f8fbe8d996 (4 revisions)
a902eea901..09f8fbe8d9

2022-09-14 cnorthrop@google.com VVL: Add new GN override for spirv
2022-09-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 8195c076a9c9 to 9e96423f7ed2 (1 revision)
2022-09-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 4f2938b7d694 to dddcaa9c9b82 (525 revisions)
2022-09-14 syoussefi@chromium.org GLES1/Vulkan: Enable LineRaster tests

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I2aa084104b82ad7b71215f8f40204cba79c410d4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102380
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-14 17:34:37 +00:00
Austin Eng e2bdb5edd7 Update CTS docs
Update with additional argument docs, and docs on uploading builds
to Swarming. I've found this particularly useful lately.

Bug: none
Change-Id: Iee04043b7260c505d4d63025c4038e3eb50db338
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102106
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2022-09-14 17:13:17 +00:00
Seto c6927203d5 Fix the Chinese windows system encoding problem.
Bug: dawn:1532

Change-Id: I01d72f07c304c1ac058f58cfc004d5e8595dc7e4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102220
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-09-14 16:41:07 +00:00
Austin Eng a659937918 Roll third_party/webgpu-cts/ a6451cc67..5e70787c4 (7 commits)
Update:
 - expectations.txt
 - ts_sources.txt
 - resource_files.txt
 - webtest .html files

a6451cc673..5e70787c4d
 - 5e7078 Add global option noRaceWithRejectOnTimeout (#1836)
 - cf51bc Add a 'storage_texture,format' test to createBindGroup.spec.ts (#1829)
 - 446c22 Fix type error when trying to .writeBuffer a Float16Array (#1833)
 - a0408e shader/execution: Add heartbeats to expression tests
 - 3c579b Add `length` F32 tests (#1815)
 - fee036 Make `make*ToF32IntervalCase`s more idiomatic (#1816)
 - a20c0a Implement `quantizeToF16` f32 tests (#1828)

Created with './tools/run cts roll'

Change-Id: I98bb79ac57585a5b57d3e4303bd7a2c4ca576598
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel,linux-dawn-rel,mac-dawn-rel,win-dawn-rel
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102150
Auto-Submit: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-09-14 16:01:37 +00:00
Jiawei Shao 060137a712 Replace NULL with nullptr
This patch replaces NULL with nullptr as nullptr is preferred as null
pointers in Chromium coding style.

Bug: None
Change-Id: Ie6ab9d606d791bad2c50001815062c22e9ec0d25
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102102
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-09-14 14:39:37 +00:00
Austin Eng a48e46f3a4 CTS: Handle may_exonerate tag
may_exonerate indicates that a test failed for a known issue that
we could exonerate. Merging of test results now removes results
with may_exonerate unless all of them were tagged as such. So, if
for example, a test fails for a known timeout issue, but has a
subsequent pass, the timeout will be ignored.

This serves to reduce the impact of known, hard-to-fix issues and
allow the CTS roller to make progress with less noise.

Change-Id: I5103a666496398a17b3aa6ccf3f267421e40ba97
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101804
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-09-14 14:29:07 +00:00
Wang Qing cd86adaf41 loongarch: Add ASSERT() breakpoint support on loongarch architecture.
Bug: dawn:1506
Change-Id: Icff59529676c1f2ad3b9e1779577cad467866797
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102146
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-09-14 13:31:37 +00:00
Shrek Shao b74ca3f8e0 Block NaN and Inf constants value as invalid
Bug: chromium:1362412
Change-Id: Ie3b8c447677ebb4bc12177a5dc4fd92d9033a359
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102280
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: Shrek Shao <shrekshao@google.com>
2022-09-14 13:13:07 +00:00
Dawn Autoroller a0b64c7e64 Roll ANGLE from f39a9659c91a to a902eea901d0 (6 revisions)
f39a9659c9..a902eea901

2022-09-13 ynovikov@chromium.org Qualify Mac 12.5.1 on Intel
2022-09-13 m.maiya@samsung.com Do not link program pipeline in glUseProgramStages
2022-09-13 m.maiya@samsung.com Vulkan: Extend bounding box when pruning updates
2022-09-13 ynovikov@chromium.org Skip end2end tests failing on iOS
2022-09-13 solti@google.com use proper TPrecision when creating TType
2022-09-13 ynovikov@chromium.org Fix UninstantiatedParameterizedTestSuite errors on iOS.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I06959add2a71da2f6aa5f53906e4493a073ab365
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102300
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-09-14 03:50:27 +00:00
Yan,Shaobo 876bd3bf87 Enable external_texture/* cts
Change-Id: Ieb153292c78ea8197b4309d796d352ce820646d1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99241
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-09-14 01:09:42 +00:00
Ben Clayton 751e6686aa tint/intrinsics.def: Implement saturate()
Fixed: tint:1591
Change-Id: I0b1397d74abd49cd44caf326a2063e50c5cf07de
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101480
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-13 22:57:52 +00:00
Ben Clayton f3d9ea4bea tint: Error if statically indexing out of bounds.
Fixed: tint:1665
Change-Id: Icd5f24f3b4d6ebbdc18b536dc426da92558a3a4b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101183
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-13 22:47:12 +00:00
Austin Eng 75943c234f Remove .d.ts files from CTS js output list
Change-Id: I3ea78cd4008772d3d60c67e1f665fe987d4cd92f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102260
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Shrek Shao <shrekshao@google.com>
Auto-Submit: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-13 22:22:02 +00:00
Austin Eng e0cbb0cfe9 CTS: set noRaceWithRejectOnTimeout
Following https://github.com/gpuweb/cts/pull/1836, this will let Chrome's
CTS runner bypass the builtin CTS timeouts in favor of our own harness
timeouts.

Bug: chromium:1340602
Change-Id: I09f25de26f28f4595c6d277050f2a71969566fdb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102200
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-09-13 22:16:42 +00:00
Antonio Maiorano 8a440ee3b4 tint: delete and regen SKIP e2e tests that were missing FXC error message
Change-Id: Id63cd40445bb9dab09ebcc67c5fef45ee29529e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102149
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-09-13 22:04:22 +00:00
Stephen White 05d8b02b0f GLSL: implement host-visible memory padding.
Since GLSL ES does not support the offset= attribute, struct members
with explicit @align or @size attributes require adding explicit
padding members.  This in turn requires rewriting any constructor
calls to initialize the new padding to zero, handled in the same
transform.

Note that this is currently overly-verbose, and will add padding where
GLSL doesn't technically need it (e.g., padding a vec3 out to 16 bytes).

Bug: tint:1415
Change-Id: Ia9ba513066a0e84f4c43247fcbbe02f5fadd6630
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101720
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-13 19:48:51 +00:00
Austin Eng 26ffcd1768 CTS: Allow sync code to interrupt and cancel a scheduled heartbeat
Bug: chromium:1340602
Change-Id: Id6f8d58bd283c8232af533cf2a0fe74adb704336
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102180
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-09-13 18:28:31 +00:00
Ben Clayton e667d777ac tint/fuzzers/tint_concurrency_fuzzer: Reduce number of threads
Should reduce memory and improve performance.

Bug: chromium:1360731
Bug: chromium:1357188
Change-Id: I94c3653f6d61db9d949ad27d8b666688ccad86dd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102182
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-09-13 18:24:02 +00:00
Antonio Maiorano 0dfbaa9ef9 tint: Make ForEachElemPair return value an enum instead of a bool
Bug: tint:1581
Change-Id: Ia16a548c03f7dff4ebc45599e20c0004834da6ae
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102121
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-09-13 18:16:11 +00:00
Antonio Maiorano e53b6f9502 tint: const eval of binary bitwise AND and OR
Bug: tint:1581
Change-Id: Id6a7a1c8e45ee91bede8014dca03a59035b29678
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/102060
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-09-13 18:13:01 +00:00