Commit Graph

9766 Commits

Author SHA1 Message Date
Austin Eng a09d05c10b Make Adapter and Instance lifetimes more robust
Previously, we would get a use-after-free if you dropped the instance
before an adapter created from it. This CL fixes up the lifetimes
such that Device refs Adapter refs Instance. Instance uses a
cycle-breaking refcount so that it releases internal refs to its
adapters when the last external ref is dropped.

Bug: none
Change-Id: I5304ec86f425247d4c45ca342fda393cc19689e3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99820
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-08-20 02:22:41 +00:00
Dawn Autoroller 322bcf827a Roll ANGLE from 6d153b7d7dfb to 9a25828113d5 (4 revisions)
6d153b7d7d..9a25828113

2022-08-19 syoussefi@chromium.org Fix submit-count perf counter test on ARM
2022-08-19 syoussefi@chromium.org Reland "Vulkan: Use VK_EXT_primitive_topology_list_restart"
2022-08-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ab4bf6ad00d4 to 1c3dfde53353 (1 revision)
2022-08-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 7f3befa9aba1 to 336269709208 (495 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 alanbaker@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: alanbaker@google.com
Change-Id: Ic8e7b9205dd4c12775facc957f467d410c7a472c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99723
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-08-19 22:35:52 +00:00
dan sinclair 158c85dab4 Add new relational rules to WGSL grammar.
This CL adds the `relational_expression.post.unary_expression` grammar
rule into the WGSL parser. A `shift_expression` helper and a
`relational_expression` helper are also added.

Note, the two helpers have `maybe_` as name prefixes. This will be
dropped when the old parser path is removed which current uses the
other versions of those names.

Bug: tint:1633
Change-Id: I6431edfe8fdb9f5a6eea804a7d6fa9a4982ea04e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99761
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-19 22:19:11 +00:00
dan sinclair 97e0c71eb6 Add new shift expression grammar rule.
This CL adds the `shift_expression.post.unary_expression` grammar
rule into the WGSL parser.

Bug: tint:1633
Change-Id: I833ddb05399afe8c792bd0b1abf3eda7f1d114e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99760
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-08-19 22:16:21 +00:00
dan sinclair 9d27ab7043 Update parser comments.
This CL updates a few parser comments to match spec.

Bug: tint:1633
Change-Id: I8cde5ea9a85f0ca58b914d2741ad131d1fa374c6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99700
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-08-19 22:07:23 +00:00
Ben Clayton d0ccb1aae6 tint/fuzzers: Add a fuzzer that tests concurrency
Currently triggers a bunch of simultaneous program writers, sharing the
same program.

Bug: tint:1651
Change-Id: I9114a3072fb14182f72d5823fa8120088c2ab167
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99802
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-19 21:33:01 +00:00
dan sinclair 2788becd09 Add `element_count_expression` to WGSL parser
This CL adds the `element_count_expression` and the requisite math
expression parsing to support along with tests.

Bug: tint:1633

Change-Id: I54ab37339754217f417f69dcd6140adbc14cbf83
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99560
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-19 21:26:01 +00:00
Ben Clayton 5d7de871b4 tint/writer/msl: Remove TODO and old logic
crbug.com/tint/1580 has been implemented for some time.
Remove the bodge to handle constant value lets.

Bug: tint:1580
Change-Id: I9a71ed8f91b6c9925fa0557bcb4c95d90461421f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99704
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
2022-08-19 20:07:22 +00:00
Ben Clayton 58794ae118 tint::ProgramBuilder: Simplify variable constructors
Expand the Option argument paradigm to:
* Remove the requirement to always pass a 'type' parameter. Type inferencing is the easier, and increasingly common way to declare a variable, so this prevents a whole lot of `nullptr` smell which negatively impacts readability.
* Accept attributes directly as arguments, removing the `utils::Vector{ ... }` smell.

Rename `ProgramBuilder::VarOptionals` to `VarOptions`, and add equivalent `LetOptions`, `ConstOptions` and `OverrideOptions`.

Clean up all the calls to `Var()`, `Let()`, `Const()` and `Override()`:
* Use the `Group()` and `Binding()` helpers where possible
* Removing `nullptr` type arguments
* Replace attribute vectors with the list of attributes.
* Remove already-defaulted `ast::StorageClass::kNone` arguments.
* Remove already-defaulted `ast::Access::kUndefined` arguments.

Finally, remove the `GroupAndBinding()` helper, which only existed because you needed to pass attributes as a vector.

Change-Id: I8890e4eb0ffac9f9df2207b28a6f02a163e34d96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99580
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2022-08-19 17:28:53 +00:00
dawn-autoroll fa289d3a83 Roll vulkan-deps from 41bdd557a6ae to 691fb8dbe91e (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/41bdd557a6ae..691fb8dbe91e

Changed dependencies:
* vulkan-validation-layers: 589efdfe57..11db0c72cc

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 alanbaker@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: alanbaker@google.com
Change-Id: Id6f849f98c9bff47158669e14b1aea1a3e16db92
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99800
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-08-19 16:34:11 +00:00
Dawn Autoroller c2f332176e Roll SwiftShader from 1c3dfde53353 to 34acfd537616 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/1c3dfde53353..34acfd537616

2022-08-19 swiftshader.regress@gmail.com Regres: Update test lists @ 1c3dfde5

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/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: alanbaker@google.com
Change-Id: I0045c840ae871461c616e41f81b087f5e8bcc281
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99722
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-08-19 15:21:25 +00:00
Dawn Autoroller 6debc15d25 Roll ANGLE from eb8488e1b30d to 6d153b7d7dfb (2 revisions)
eb8488e1b3..6d153b7d7d

2022-08-19 ffz@google.com Implement BaseInstanceEXT Capture Entry Points
2022-08-18 syoussefi@chromium.org Revert "Vulkan: Use VK_EXT_primitive_topology_list_restart"

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 alanbaker@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: alanbaker@google.com
Change-Id: Iff683ff5e2d8916bfba450257638cf195eeabd3d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99721
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-08-19 09:35:11 +00:00
Austin Eng 9de123fc85 Suppress Win Intel x86 tests failing after parallelization disabled
These tests used to be flaky, and now fail consistently after jobs
is set to 1 instead of 4. Suppressing so parallelization can be
disabled to make test results more consistent.

Bug: chromium:1353938
Change-Id: Ia99445ddd43d55d7ac3f67dd8e177b0fd34d51f3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99762
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
2022-08-19 05:36:21 +00:00
dawn-autoroll 482d4952d9 Roll vulkan-deps from 33d0b2c3122a to 41bdd557a6ae (9 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/33d0b2c3122a..41bdd557a6ae

Changed dependencies:
* spirv-tools: 0073a1fa36..3c1a14b2b6
* vulkan-headers: c896e2f920..715673702f
* vulkan-loader: 16d5d8f254..40faec799c
* vulkan-tools: d55c7aaf04..439026106a
* vulkan-validation-layers: caaa7f2d66..589efdfe57

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 alanbaker@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: alanbaker@google.com
Change-Id: I61698eac648ee1be3dd75e1c1d67b8b411345f1e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99745
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-19 01:43:52 +00:00
Austin Eng caa9baed54 Send test heartbeats from the CTS runner
Heartbeats are rate-limited to 1 every 500ms.
They are sent at the following checkpoints:
 - Before a log is recorded in TestCaseRecorder
 - Just before an async WebGPU operation
 - Immediately following completion of a async WebGPU op
 - After a then/catch handler waiting on an async WebGPU op

Bug: chromium:1340602
Change-Id: I4d5c864dabd3f4215dac2e78d7658df0f6a7b0b7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99360
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-18 22:49:10 +00:00
Takahiro 6a314e49e1 Accept unfilterable-float sample type for depth format texture
Allow unfilterable-float sample type for depth format texture
and add unit tests and end2end tests to check it.

Bug: dawn:1508
Change-Id: I46fc22d66d0c2ad5e3923a18e4d13d174203964a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99060
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2022-08-18 21:07:19 +00:00
Dawn Autoroller 539b0c2210 Roll ANGLE from 955adb775768 to eb8488e1b30d (3 revisions)
955adb7757..eb8488e1b3

2022-08-18 ynovikov@chromium.org Skip end2end failures on Pixel 6 Android 13 TP1A.220624.021
2022-08-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 5ac9bd16c803 to ab4bf6ad00d4 (1 revision)
2022-08-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 754ede9fc072 to 7f3befa9aba1 (1095 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 alanbaker@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: alanbaker@google.com
Change-Id: I025d1d595cf7a9a1bad9a0c18567b796cbb980bd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99720
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-08-18 20:40:11 +00:00
Ryan Harrison 841db7f515 Add libfuzzer_exports.h to Tint fuzzer common code
BUG=chromium:1353969

Change-Id: I66a08a3ad19a175b52737a5c3a81d3b1a5a786f5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99702
Reviewed-by: Austin Eng <enga@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-18 18:41:17 +00:00
Austin Eng bf3243568c Add DeviceBase::APIGetAdapter
Adds a way to query the adapter from a device. Only valid in Dawn Native.
Returns a new reference to the caller. The caller is responsible for
releasing it.

This is needed so in Chrome, SharedImage can query the WGPUAdapter from
the WGPUDevice, and then WGPUAdapterProperties may be queried from the
WGPUAdapter.

Change-Id: I719a8728eff06ab7a22be3db5fb5cfd2ebb2f0f7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99703
Reviewed-by: Zhenyao Mo <zmo@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-08-18 18:02:00 +00:00
Dawn Autoroller 1ac1514ad2 Roll SwiftShader from ab4bf6ad00d4 to 1c3dfde53353 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ab4bf6ad00d4..1c3dfde53353

2022-08-18 sugoi@google.com Added missing null pointer check on pDepthStencilResolveAttachment

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/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: alanbaker@google.com
Change-Id: I0ea5d6f55b1b6aadb6090315e91d82a4f2167320
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99680
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-18 15:09:32 +00:00
dan sinclair ff2cb02e92 Add bitwise_expression to the WGSL parser.
This CL adds the `bitwise_expression.post.unary_expression` parsing
into the WGSL parser.

Bug: tint:1633
Change-Id: Idaf1a413662d1c10d9d9f25d3b35ed5323b8f883
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99383
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-18 14:37:17 +00:00
Dawn Autoroller e0bf254f72 Roll ANGLE from 92e4cd75785d to 955adb775768 (10 revisions)
92e4cd7578..955adb7757

2022-08-18 eddiehatfield@google.com Cache compiled shader
2022-08-18 yuxinhu@google.com Remove suppression of previously crashed deqp test
2022-08-18 srisser@google.com Skip glObjectLabel in replay capture
2022-08-17 geofflang@google.com Don't set the framebuffer read buffer dirty bit on ES2.
2022-08-17 m.maiya@samsung.com An inactive but alive thread shouldn't prevent cleanup
2022-08-17 romanl@google.com Reland Copy .vpython3 from chromium/src/+/main:.vpython3
2022-08-17 romanl@google.com Add .vpython .vpython3 to trigger all tests on changes there.
2022-08-17 bsheedy@chromium.org Revert "Copy .vpython3 from chromium/src/+/main:.vpython3"
2022-08-17 romanl@google.com Copy .vpython3 from chromium/src/+/main:.vpython3
2022-08-17 romanl@google.com Add process_angle_perf_results.py to perf tests data.

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 alanbaker@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: alanbaker@google.com
Change-Id: Ieb2be07f5707d0a94dbfdf0e1302080322dfcc00
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99640
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-18 07:10:50 +00:00
dawn-autoroll 42e30e15f7 Roll vulkan-deps from 863822794aa7 to 33d0b2c3122a (13 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/863822794aa7..33d0b2c3122a

Changed dependencies:
* spirv-tools: 9abacb34a5..0073a1fa36
* vulkan-tools: 497f232680..d55c7aaf04
* vulkan-validation-layers: e51d0d1c18..caaa7f2d66

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 alanbaker@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: alanbaker@google.com
Change-Id: Ib5ea9ebb40cf936428446f7b74583b596d815e82
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99620
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-18 04:41:50 +00:00
Loko Kung 30fa0d8d2c Makes sure to zero-init D3D12 descriptors for cache keys.
Fixed: dawn:1471
Change-Id: I2692d3caa9b0d4dabe473b7a7d5249473da80c5b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99600
Auto-Submit: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-18 02:34:40 +00:00
Ben Clayton e86758cb26 reader/wgsl: Error if 'struct' has attributes
Attributes were being parsed, constructed, then thrown away, when declared on a structure. This was triggering the unreachable-AST node seatbelt in the Resolver.

Replace the confusing `Maybe<bool>` return types with `Maybe<Void>`. The boolean return value was not actually being used, as logic was (correctly) using the `Maybe` error / matched state.

Bug: chromium:1352803
Change-Id: I39e4994e3e9b13201ba4f4e4820cd4b2f46e93c5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99100
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2022-08-17 18:57:49 +00:00
Dawn Autoroller b60acc303f Roll SwiftShader from 3fb7084b02d7 to ab4bf6ad00d4 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3fb7084b02d7..ab4bf6ad00d4

2022-08-17 nicolas.capens@gmail.com Ignore VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR
2022-08-17 swiftshader.regress@gmail.com Regres: Update test lists @ a6c3e363

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/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: alanbaker@google.com
Change-Id: I32d621c2059a103cc528ee091b799aa12c30d832
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99521
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-17 18:49:09 +00:00
Dawn Autoroller a48f233ca5 Roll ANGLE from 213a1ee6e6db to 92e4cd75785d (1 revision)
213a1ee6e6..92e4cd7578

2022-08-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from c61fc9aec162 to 5ac9bd16c803 (3 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 alanbaker@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: alanbaker@google.com
Change-Id: I0fbbfa5dd54a9aac096fae57c99f36c9fb04c1ce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99520
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-08-17 18:18:33 +00:00
Zhaoming Jiang ff1330240b tint/transform: Fix index 0 accessing in DecomposeMemoryAccess
This patch fix a bug in DecomposeMemoryAccess, allowing access index 0
of a member in uniform and storage buffer being recognized as constant
index.

Bug: tint:1652
Change-Id: Ia428de17c860bdafe87c3af9e46426c74fe8fd68
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99480
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: Zhaoming Jiang <zhaoming.jiang@intel.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-17 18:15:00 +00:00
Ben Clayton dce63f5717 tint/utils/UniqueVector: Use utils::Vector and utils::Hashset
For fewer heap allocations, faster lookups.

Change-Id: I02da7c1a63608096ec898b0d89f9f97c6db8733f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/98141
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-17 18:07:20 +00:00
Antonio Maiorano b79238d7ec tint: Implement const eval of binary minus
Bug: tint:1581
Change-Id: I90ce59e89a5b4b9e94de1181ca9d85e9040be3e5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99421
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-08-17 17:38:23 +00:00
dan sinclair eb0af9def7 Add optionally_typed_ident to WGSL parser.
This CL adds the `optionally_typed_ident` construct into the WGSL
parser and uses it where the conditional was used previously.

Bug: tint:1633
Change-Id: I15eaf838792208f56b4ddebd950086f14c8962b3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99382
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-17 17:38:17 +00:00
Ben Clayton 0f0ba20208 tint/transform: Fix PromoteInitializersToLetTest for materialized constants
PromoteInitializersToLet was not handling sem::Materialize nodes.
This can happen for const arrays when they are dynamically indexed.

Fixed: tint:1653
Change-Id: I3d67d8139e481c89b31a3a30c7ef44384b7545ba
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99500
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-17 17:26:41 +00:00
dan sinclair 873f92e741 Convert assignment_statement to new WGSL grammar.
This CL converts the `assignment_statement` to
`variable_updating_statement`. Some more test cases are added
around the phony assignment and usage of compound operators.

The `lhs_expression` and `core_lhs_expression` are converted to
return `Maybe`s.

Bug: tint:1633
Change-Id: Iaed6373e2f202609adf341b57dc9027e5a04af34
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99380
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-17 17:20:50 +00:00
dan sinclair 6c8dc15d64 Add core_lhs_expression and lhs_expression to parser.
This CL updates the WGSL parser to have a `core_lhs_expression`
and a `lhs_expression` grammar rule. The rules are not used anywhere
yet, but are standalone so are added with tests.

Bug: tint:1633
Change-Id: I87bdaefeb06be637f72a7e6fa72ce2b6298c7bb7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99240
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-17 16:30:30 +00:00
Ben Clayton e13160efb6 tint/utils: Add Hashmap and Hashset
Algorithmically faster than `std::unordered_[map|set]`, and use a small vector internally reducing heap allocations.

Change-Id: I9c0b00468272d9d7c72ab077d832d66d1368500c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/98123
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2022-08-17 16:28:23 +00:00
Ben Clayton 81f0686523 tint/utils/vector: Allow use of incomplete types
Attempting to make a Vector of an incomplete pointer type would trigger an error as the `CanReinterpretSlice` trail magic is wanting to know the base types, which isn't known yet.

Split `CanReinterpretSlice` into class specializations, where the common case of no-cast doesn't look at the base types.

Change-Id: Id016b027b131f7988ccf3cae93622dacb7802a1d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/98140
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-08-17 15:42:15 +00:00
dan sinclair 6e716c77ac Sync some WGSL grammar names to spec
This CL updates some of the names used in the WGSL parser to match
the grammar rules in the spec.

Bug: tint:1633
Change-Id: I489e1c6a945bdd6063d400cfdbd87aa81a97c5f0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99200
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-17 14:28:31 +00:00
Antonio Maiorano f8a34d08dd tint: Add CheckedSub functions
Bug: tint:1581
Change-Id: Iee836af4b5a1252335f680cba7ab4e04c2996728
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99420
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-08-17 12:46:39 +00:00
Dawn Autoroller 5ef011f2c3 Roll SwiftShader from c61fc9aec162 to 3fb7084b02d7 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c61fc9aec162..3fb7084b02d7

2022-08-16 sugoi@google.com Update Marl to 2f129cf1b
2022-08-16 sugoi@google.com update-marl: run Gerrit hook on generated CLs

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/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: alanbaker@google.com
Change-Id: I6eec635c37ff72707dc66b61ab8bbdea38b9ed80
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99343
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-08-17 05:08:49 +00:00
Sunny Sachanandani 1130a602ef d3d12: Disallow creating external image after device destruction
ExternalImageDXGIImpl holds a weak reference to the device. If the
device is destroyed before the image is created, the image will have a
dangling reference to the device which can cause a use-after-free.

This CL fixes that by adding a ValidateIsAlive() check before creating
the image similar to creating other API objects.

Bug: chromium:1352802
Change-Id: I477f15680ffd27e1ad0166835c4debb80b4be761
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99384
Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-08-17 03:52:59 +00:00
Dawn Autoroller 97a6c2a265 Roll ANGLE from 0f5770deabf2 to 213a1ee6e6db (10 revisions)
0f5770deab..213a1ee6e6

2022-08-16 syoussefi@chromium.org Vulkan: Enable VK_EXT_primitives_generated_query
2022-08-16 solti@google.com Adding angle_perftests test case names in logcat
2022-08-16 romanl@google.com Avoid logging None introduced in https://crrev.com/c/3831885
2022-08-16 romanl@google.com Improve Ctrl-c handling.
2022-08-16 syoussefi@chromium.org Vulkan: Use VK_EXT_primitive_topology_list_restart
2022-08-16 solti@google.com Update CHROMIUM_copy_texture.txt to match the code
2022-08-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from a6c3e363b7a9 to c61fc9aec162 (1 revision)
2022-08-16 romanl@google.com Refactor to reduce main loop complexity.
2022-08-16 capn@google.com Unconditionally enable EGL_ANGLE_iosurface_client_buffer on macOS
2022-08-16 romanl@google.com Reland "Infra: Enable Skia Gold tests on Pixel 6"

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 alanbaker@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: alanbaker@google.com
Change-Id: Ic3132dab47883168db6218d8605ccd7780864d38
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99342
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-08-17 03:20:49 +00:00
Loko Kung f83652f019 Remove suppressions from dawn:1471.
- Tests seem to be passing fine in manual testing. Fixes throughout key
  generation and stream implementation may have unintentionally fixed
  this issue.

Fixed: dawn:1471
Change-Id: I17268d66be6dfc47cd7f3b480b424909f18e7f1f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99422
Reviewed-by: Austin Eng <enga@chromium.org>
Auto-Submit: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-08-16 22:44:09 +00:00
Jiawei Shao d9d6dfac9a Enable the workaround about T2T copy on Intel Gen11 GPUs
This patch enables the workaround about using a temporary buffer in
the T2T copy on Intel Gen11 GPUs after running WebGPU CTS on these
platforms.

Bug: chromium:1161355
Change-Id: Id4a4f189b4a7a3954dc66062d27e9b226d1409f6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99320
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-08-16 18:05:03 +00:00
Dawn Autoroller c8b0cfe7e3 Roll SwiftShader from a6c3e363b7a9 to c61fc9aec162 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/a6c3e363b7a9..c61fc9aec162

2022-08-16 syoussefi@google.com Implement VK_EXT_primitive_topology_list_restart

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

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/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: alanbaker@google.com
Change-Id: I3f0fcb4070d5846386c44f176f1baeffebb153ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99341
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-08-16 16:04:52 +00:00
Antonio Maiorano 2de4deea1f tint: Fix implicit conversion of vector-scalar of abstract types in binary operations
Example: const v2 = vec3(1) + 2.2;

Bug: chromium:1350147
Change-Id: Ie75d76bf00a6b2f6abd49293290f6e5065c31dfb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99301
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-08-16 16:00:02 +00:00
Dawn Autoroller bade13a5d2 Roll ANGLE from 2089943b951d to 0f5770deabf2 (1 revision)
2089943b95..0f5770deab

2022-08-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 16d8164e92a5 to 754ede9fc072 (380 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 alanbaker@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: alanbaker@google.com
Change-Id: Iabf1e768222384df81a12e282c78b5118cee1716
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99340
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-16 14:24:32 +00:00
dawn-autoroll dadb934e19 Roll vulkan-deps from fb0e26499a68 to 863822794aa7 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/fb0e26499a68..863822794aa7

Changed dependencies:
* spirv-tools: 3a8a961cff..9abacb34a5
* vulkan-validation-layers: 50fe2fc2d0..e51d0d1c18

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 alanbaker@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: alanbaker@google.com
Change-Id: I4b435403b7e172e8f0d5eb5b052f0591b18d0719
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99300
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-08-16 07:54:32 +00:00
Dawn Autoroller c81cefe06e Roll ANGLE from 042fda3cacda to 2089943b951d (4 revisions)
042fda3cac..2089943b95

2022-08-15 cnorthrop@google.com Tests: Add Lumino City trace
2022-08-15 penghuang@chromium.org Not use Android TLS slot for chromium
2022-08-15 romanl@google.com Use stdout instead of (default) stderr in logging.StreamHandler
2022-08-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 2438c1b18a5e to a6c3e363b7a9 (1 revision)

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 alanbaker@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: alanbaker@google.com
Change-Id: I2a29d41e7a761eeac7d650e3ea4e833e23839767
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99260
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-08-16 00:45:31 +00:00
Antonio Maiorano fa4a7291f2 tint: add [[nodiscard]] on utils::Result class
Helps when changing the return type of a function from `void` to
`Result<T>`. The compiler fails in places where the return value is
ignored, which is never what we want with Result.

Change-Id: Id3271ea9fb1128f8f493030f013b2b577235be8f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99160
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-08-15 19:31:51 +00:00
Peter Kasting c935b497e6 Split some structs out of DawnTest.h into their own file.
This allows them to be fully defined before being referenced, which
fixes compile errors in C++20.

Bug: chromium:1284275
Change-Id: I3c0f874406247c04d53710431931f82c3deaff3c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99080
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Peter Kasting <pkasting@google.com>
Auto-Submit: Peter Kasting <pkasting@google.com>
2022-08-15 18:55:41 +00:00