Commit Graph

11936 Commits

Author SHA1 Message Date
Peng Huang a56069b03d Remove some unnecessary #include
Change-Id: I51382e4b4d68da55631d37b1b72fecaaef2b16ee
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/124020
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-14 15:47:02 +00:00
Ben Clayton d7713c19bb tools: Update go.chromium.org/luci dep
Required for new auth token flow.

Change-Id: Ia7f5c1a8a8994a29fef4ead2218767deee768a37
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123901
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Kokoro: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-14 14:42:18 +00:00
dawn-autoroll 349e57ce78 Roll vulkan-deps from ffabe3106e73 to 6269f2d7cf86 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/ffabe3106e73..6269f2d7cf86

Changed dependencies:
* vulkan-validation-layers: 90288cbe76..20e85d7f2b

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,webgpu-developers@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: I8cbd4b6a2b834734945d39955f8cc7d38ce98ee6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123941
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>
2023-03-14 14:04:44 +00:00
Ben Clayton 97382d96f5 tint: Validate no template args with functions / builtin calls
This was already handled when resolving regular identifiers, but calls special case this resolving, and failed to check for template arguments.

Bug: chromium:1424273
Change-Id: Id756c7fbca93afcd9fd3792466471aa43d3dff04
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123980
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2023-03-14 11:32:54 +00:00
Loko Kung ebf8b7fd91 Flips the default deprecated code path to error instead of logging.
Bug: dawn:1677
Change-Id: I833b024fa89ee2eeed1dda80ad6e39f52bbcf8ba
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/117535
Commit-Queue: Loko Kung <lokokung@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-14 07:12:53 +00:00
Dawn Autoroller f973c9afc4 Roll ANGLE from 98735ee0994f to 755bfe471d23 (3 revisions)
98735ee099..755bfe471d

2023-03-13 cclao@google.com Vulkan: Remove inUseAndRespecifiedWithoutData from BufferVk
2023-03-13 lexa.knyazev@gmail.com Suppress failing capture/replay test
2023-03-13 cclao@google.com Vulkan: Optimize glBufferData call to improve storage reuse

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 angle-team+autoroll@google.com,bclayton@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: bclayton@google.com
Change-Id: I3159d32e25fc9206ac1f2afa225526e46eb105be
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123940
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>
2023-03-14 05:28:10 +00:00
Peng Huang fb27a0a3e4 Move some files from d3d12 to d3d folder
Those files will be shared between d3d11 and d3d12 backends.

Change-Id: I0ec01365ccc465dfb0e9843a313d87ce649c940e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123740
Auto-Submit: Peng Huang <penghuang@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
2023-03-14 01:12:29 +00:00
dawn-autoroll 21c9f0f04c Roll vulkan-deps from 47ccaa754cba to ffabe3106e73 (14 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/47ccaa754cba..ffabe3106e73

Changed dependencies:
* spirv-cross: 7512345f61..d26c233e1c
* spirv-tools: fba26fd606..25f6c0cea5
* vulkan-headers: a3dd2655a3..d732b2de30
* vulkan-loader: eb13094254..dc32470ff1
* vulkan-tools: 5bcfa1605e..a7bc1fe90f
* vulkan-validation-layers: 63231b8c6f..90288cbe76

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,webgpu-developers@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: Iab6a5b00295b144200b2c2ebf6e444410e8858a2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123863
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-14 00:49:44 +00:00
dan sinclair 6784a52766 Sync keyword/reserved word list.
This CL updates the keyword/reserved word list in Tint to match latest
spec. The two differences are:

* `bitcast` is left as a keyword until we make the grammar update
* `fallthrough` is left a keyword for error purposes.

Bug: tint:1823
Change-Id: I5a33c78d21f56e0d0e2efa0114af810f2ebb8c87
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122960
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-03-13 22:23:38 +00:00
Austin Eng 868efb9739 Roll third_party/webgpu-cts/ 0557875f3..3030a7bb2 (30 commits)
Regenerated:
 - expectations.txt
 - ts_sources.txt
 - test_list.txt
 - cache_list.txt
 - resource_files.txt
 - webtest .html files

https: //chromium.googlesource.com/external/github.com/gpuweb/cts/+log/0557875f3982..3030a7bb2c69
 - 3030a7 Implement `frexp` f32 tests (#2336)
 - 5be43e Implement `determinant` f32 tests (#2321)
 - 1c53bf Adds stale adapter tests (#2387)
 - 176741 Test destroyed buffers and textures on submit
 - 4bd39d Implement absolute error for `acos` intervals (#2372)
 - d56144 Implement absolute error for `asin` intervals (#2346)
 - 7e411f shader/execution: Flip eval order of assignment
 - e6edef shader/execution: Port evaluation order tests to flow_control
 - e45de6 Add isZeroCopy cases for ExternalTexture (#2338)
 - 6c2b83 shader/execution:  Add more complex flow control tests
 - 8c8d89 Implement `bool` builtin tests (#2327)
 - d18b3a Implement `i32` builtin tests (#2379)
 - dfac60 Implement `u32` builtin tests (#2344)
 - 9179cd Test import GPUExternalTexture from destroyed device (#2351)
 - fb969c Sync keyword/reserved word list. (#2383)
 - 685049 Implement `f32` builtin tests (#2382)
 - 0e3229 shader/execution: Add 'preventValueOptimizations' case parameterization
 - ec5ad7 Start adding queue validation tests for buffers and textures
 - a1efad Put the same URL in all "Open" links (#2316)
 - f99f92 Updates max*BufferBindingSize limit tests to adhere to maxBufferSize (#2339)
 - d88504 Add validation tests on BGRA8Unorm canvas with StorageBinding usage (#2348)
 - 8d827d Add validation test for maxComputeXXX
 - e613a8 Rename maximumLimit to adapterLimit and related changes
 - 7b1df1 Update src/webgpu/api/validation/capability_checks/limits/maxBindingsPerBindGroup.spec.ts
 - 188203 Check maxBindingsPerBindGroup limit matches spec limits
 - a28619 Fix writable binding aliasing in webgpu:api,validation,resource_usages,texture,in_pass_encoder (#2341)
 - c54778 Fix wrong conditions and missing formats for maxAttachmentState tests. (#2343)
 - 6b01d8 Changes for depthWriteEnabled/depthCompare/depthClearValue being required (#2342)
 - b61662 Require npm >=8.5.2 (#2340)
 - 785335 Generate OOM error using createTexture (#2337)
Change-Id: Iebefb8ee703437252e44040fd74310a52d079dc4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123660
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-13 20:22:02 +00:00
James Price 7bca4d7293 tint: Remove constant::Value::AllEqual()
The only uses of this method were to check for splats when emitting
vector constants in some backends, and they can just check for
constant::Splat instead.

Change-Id: I12f5ecdd4a7c1191a3a516d4fd3f349230e42631
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122803
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-13 19:05:16 +00:00
James Price 69253ee8a5 tint/uniformity: Move recently added tests
The uniformity tests are (very loosely) grouped into categories, so
move the recently added assignment, compound assignment, and
increment/decrement tests to be with the other statement tests instead
of with the tests for diagnostic quality.

Change-Id: I133da4b83b7faba3e43752d45bcebb822d08625f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123641
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-03-13 18:14:56 +00:00
James Price 8cb5ed8c2c tint/uniformity: Fix compound assignment LHS eval
Only evaluate the LHS once, and then manually "load" from the
referenced variable to emulate the desugared implementation. Do the
same for increment/decrement statements.

Fixed: tint:1869
Change-Id: If0dc96bebd52485cfe222ae09305264ffc8b9329
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123640
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
2023-03-13 17:03:04 +00:00
Dawn Autoroller 821dc6b6c5 Roll SwiftShader from 3764eb85917a to 64e470f7b9b0 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3764eb85917a..64e470f7b9b0

2023-03-13 dvet@google.com Fix out-of-bounds operand access in image write.

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 bclayton@google.com,webgpu-developers@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: bclayton@google.com
Change-Id: Iab89c372ddee78aff932a9b968afcf0f1471958e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123841
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>
2023-03-13 16:49:22 +00:00
Dawn Autoroller ef1fb20ab5 Roll ANGLE from 006d826dc037 to 98735ee0994f (1 revision)
006d826dc0..98735ee099

2023-03-13 i.nazarov@samsung.com Revert "Fixed bugs in "FastVector" class."

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 angle-team+autoroll@google.com,bclayton@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: bclayton@google.com
Change-Id: Idd97d18b4b3b171aaf186a7a708c4367753da08b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123840
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>
2023-03-13 16:14:59 +00:00
dan sinclair 79d0f2b784 [ir] Add `ir::Builtin`
This CL adds an `ir::Builtin` which holds the builtin function
information and arguments for a builtin call.

Bug: tint:1718
Change-Id: If08df9f7a9f7edd2781f82d4a4955635290f3f9a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122607
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2023-03-13 15:42:12 +00:00
Dawn Autoroller 286ac27fcc Roll ANGLE from 67ad3ddcf996 to 006d826dc037 (1 revision)
67ad3ddcf9..006d826dc0

2023-03-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 4ac540bc62cf to 20d674342f00 (12 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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: I8d795aa23800048a157870647959514444d887a2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123720
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>
2023-03-11 20:23:15 +00:00
dawn-autoroll de82918988 Roll vulkan-deps from b2d90316944e to 47ccaa754cba (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/b2d90316944e..47ccaa754cba

Changed dependencies:
* spirv-tools: 01828dac77..fba26fd606
* vulkan-validation-layers: 4efae38a06..63231b8c6f

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: I0ff4df1c976ea3a009f8a6c385e070aef7e77418
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123700
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>
2023-03-11 18:58:57 +00:00
Dawn Autoroller 51fcef4159 Roll ANGLE from ffdcfb942c6e to 67ad3ddcf996 (10 revisions)
ffdcfb942c..67ad3ddcf9

2023-03-11 cclao@google.com Vulkan: Relax size limit for dynamicBuffer to pick buddy algorithm
2023-03-10 i.nazarov@samsung.com Vulkan: Fixed Context Priority mixing problems.
2023-03-10 i.nazarov@samsung.com Vulkan: Add and use rx::vk::ReleasableResource class.
2023-03-10 i.nazarov@samsung.com Vulkan: Fix UBs when deleted attachment is used in a RenderPass.
2023-03-10 i.nazarov@samsung.com Vulkan: Remove code left after introduce of "vk::SharedGarbage"
2023-03-10 i.nazarov@samsung.com Vulkan: Rename "RendererVk::waitFor*ToBeSubmitted()" methods.
2023-03-10 i.nazarov@samsung.com Vulkan: Enforce ContextPriority in ShareGroup and with EGLImage
2023-03-10 syoussefi@chromium.org Roll VMA forward
2023-03-10 mikes@lunarg.com Expose shader extensions based on ESSL version
2023-03-10 chris@rive.app Add back "non-robust" PLS queries

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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: Iff4eff14e73f6e38daf5dbc142d2c2324bcedb40
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123582
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-11 07:14:00 +00:00
dawn-autoroll 667d560be5 Roll vulkan-deps from 2d9f2c3474e7 to b2d90316944e (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/2d9f2c3474e7..b2d90316944e

Changed dependencies:
* vulkan-validation-layers: 38341564f5..4efae38a06

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: I7d6976ad55509229f7f61a233ee8306167a12ada
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123464
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-11 05:47:20 +00:00
Stephen White 76cd4332cc Vulkan: enable frag shader placeholder.
The Vulkan spec mandates the use of a fragment shader unless
rasterizer discard is enabled. For now, enable the placeholder
fragment shader in all cases, with a bug logged to optimize it
for the rasterizer discard case.

Bug: dawn:1696 dawn:1698
Change-Id: I9e85e6308a9952fc505382488c618897bd9abc7b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123503
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2023-03-10 19:20:15 +00:00
Dawn Autoroller 4eea1e042d Roll ANGLE from 377216093693 to ffdcfb942c6e (3 revisions)
3772160936..ffdcfb942c

2023-03-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 315bf0e37102 to d17e7dad8e87 (5 revisions)
2023-03-10 chris@rive.app Implicitly enable PLS dependency extensions
2023-03-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from a811a4fbb723 to 2bcf4b3eb3f2 (598 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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: I2667b2ad615b28287226f117dfd18a3a013340d3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123581
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>
2023-03-10 17:25:12 +00:00
dawn-autoroll 271cb0571c Roll vulkan-deps from ad24c79d4200 to 2d9f2c3474e7 (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/ad24c79d4200..2d9f2c3474e7

Changed dependencies:
* spirv-tools: b029037aaa..01828dac77
* vulkan-validation-layers: a42413f63d..38341564f5

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: Icefa70ce9a90cf1874ae3f7f86cd12b56f6ac154
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123463
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>
2023-03-10 16:37:58 +00:00
Ben Clayton cd097f40a3 tint: Improve module scope var diagnostic
Improve the error message when declaring a module-scope var without an address space, with an initializer.

Fixed: tint:1870
Change-Id: If087ae7dadb512c7050e89a0c75990080668e27d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123600
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-10 13:10:52 +00:00
dan sinclair e95b59c34d Add ExternalTextureOptions
This CL adds a `writer/ExternalTextureOptions` to allow providing
external texture information to the generators. The generators are
updated to have the option in their config, but do not use it yet.

Bug: tint:1855 chromium:1421379
Change-Id: I99b122c5cae145e8527158f300da81743f89775a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123160
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-10 11:34:26 +00:00
James Price 55509fae00 Roll third_party/gpuweb to 1f8a05a
Fixup Dawn node as necessary.

Change-Id: I96b9a078adba1c8988f9bc5835e1f7645c67a57d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123501
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2023-03-10 11:06:36 +00:00
Dawn Autoroller 783285fa1c Roll ANGLE from c2aa8b58acb2 to 377216093693 (6 revisions)
c2aa8b58ac..3772160936

2023-03-09 angle-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from fb9155b074e3 to 315bf0e37102 (18 revisions)
2023-03-09 romanl@google.com Ignore VUID-VkGraphicsPipelineCreateInfo-None-06573.
2023-03-09 romanl@google.com Skip street_fighter_duel trace on win nvidia.
2023-03-09 romanl@google.com Revert "Vulkan: SurfaceVk should only wait for GPU work that uses it"
2023-03-09 romanl@google.com Fix more cases of racy waitForStep usage.
2023-03-09 romanl@google.com Assert that waitForStep steps go in increasing order.

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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: Ib905b08a44fa66e56e79c500f3c6c0cd769ba8b1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123580
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-10 04:01:45 +00:00
dawn-autoroll c372229527 Roll vulkan-deps from e2a58565d1a3 to ad24c79d4200 (6 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/e2a58565d1a3..ad24c79d4200

Changed dependencies:
* spirv-tools: c069a5c7ee..b029037aaa
* vulkan-loader: e4895e86f7..eb13094254
* vulkan-validation-layers: 781b896df1..a42413f63d

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: Iaef97bee3518729d429e7cdceeca0beb02fdbc11
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123462
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-10 03:25:29 +00:00
Ben Clayton a36fa42dd7 tint/cmd: Use correct preprocessor guard for libspriv.hpp
This header is used by TINT_BUILD_SPV_READER not TINT_BUILD_SPV_WRITER

Change-Id: Ia42e4f2bf2ad37f426d2bf14e962abed9de147a9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122520
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-09 23:46:59 +00:00
Ben Clayton 574b4b1996 tint: Fix constant::Splat conversion of struct types
Conversion can happen for structure materialization (modf, frexp).
If both structure members are the same type and value, then a constant::Splat will be constructed, which needs to handle conversion.

Bug: chromium:1417515
Change-Id: Iadd14ce00b8d5c22226c601ec5af9a84e6c0c5cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122900
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-09 23:22:27 +00:00
Ben Clayton a92a8078c5 tools/run-cts: Fix code coverage in `--isolate` mode
Use the new `cmdline.ts --coverage` flag in https://github.com/gpuweb/cts/pull/2206 to write out the per-test coverage to a unique file.

Change-Id: Iea273217eede2fa615b78cd6f69f036976dcfd35
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/117883
Kokoro: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2023-03-09 23:08:02 +00:00
Stephen White cc2e9eca1a Vulkan: skip a test that's failing with newer VVL.
Bug: dawn:1696
Change-Id: Ie14e3d124342228edef17a122f380e2bdfaf1e57
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123502
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
Auto-Submit: Stephen White <senorblanco@chromium.org>
Reviewed-by: dan sinclair <dsinclair@google.com>
2023-03-09 22:59:38 +00:00
Ben Clayton 7972a10aa8 tint: Add missing include
Should fix dawn -> chromium roll

Change-Id: If4bf1ed6795dc55c4c5a45e8ba8fa2eb0da7270a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123521
Kokoro: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: dan sinclair <dsinclair@google.com>
2023-03-09 21:33:13 +00:00
Ben Clayton cc3f851ad8 tint/transform: Polyfill f32 conversion to i32 or u32
And vectors of those types.

Fixed: tint:1866
Change-Id: Ic0b5061232c5eb5a67d43dde1cd9599c580f4388
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123201
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Ben Clayton <bclayton@chromium.org>
2023-03-09 21:26:12 +00:00
Stephen White 905b63b90f Remove expectations for now-passing tests.
Change-Id: I3be575e64eb2ff7c3e1058e6858be4497e6f7bd2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123500
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-09 20:30:40 +00:00
Ben Clayton f1f56b2d3c tint/writer/glsl: Set default precision to highp
WGSL states that `f32` is a IEEE-754 binary32. mediump precision guarantees are much smaller than highp, and using mediump can break code generated by tint.

Change-Id: I8a129c4c8ac078c785e0d5d7d21f19ed6b3620b5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123400
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2023-03-09 19:58:23 +00:00
Ben Clayton 4fea9d0fbb tint: Implement Switch() without recursion
This removes the number of function calls made in non-optimized builds.

Reduces the optimized, all-features-enabled 'tint' executable size by
about 1%.

This change removes the bloom filter optimizations which provided
substantial performance gains with the old recursive implementation,
however this still appears to be ~1% faster than the optimized version.

Change-Id: Ic2bb82e9182459e37907f9e0d0b4771bde218f9f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123440
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Ben Clayton <bclayton@chromium.org>
2023-03-09 18:24:19 +00:00
Ben Clayton 23946b3606 tint: Move Switch() to own header
castable.h is bigger than it needs to be, and pretty much every tint .cc file includes castable.h
Reduce the amount of code that .cc files that don't use Switch() need to compile.

Change-Id: Ibb4e8b0bc7104ad33a7f2f39587c7d9e749fee97
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123401
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-03-09 16:50:19 +00:00
Dawn Autoroller b4f095ec29 Roll ANGLE from f1717ba9c36e to c2aa8b58acb2 (4 revisions)
f1717ba9c3..c2aa8b58ac

2023-03-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 0ba0b45490cd to 3764eb85917a (1 revision)
2023-03-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 52ec1cb28f1b to a811a4fbb723 (335 revisions)
2023-03-09 djg@apple.com ANGLE_metal_shared_event_sync: Control signaling external events
2023-03-09 cnorthrop@google.com Tests: Add Street Fighter: Duel trace

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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: I1eac721b283c4f5256c3a8855981b5a537d74ca1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123480
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>
2023-03-09 14:43:10 +00:00
dawn-autoroll 76e0c36101 Roll vulkan-deps from 9eee852dba52 to e2a58565d1a3 (5 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/9eee852dba52..e2a58565d1a3

Changed dependencies:
* spirv-tools: 42267721e1..c069a5c7ee
* vulkan-validation-layers: e894873f22..781b896df1

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: I83ec8e0d2348cb0216b101fcadc8f7d64685e984
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123460
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-09 14:12:43 +00:00
dan sinclair 9543f74739 Move sem::BuiltinType to builtin::Function.
This CL moves `sem::BuiltinType` to `builtin::Function`. This makes it
available for use in the IR. The `Function` name better maps to the
usage in that it contains the builtin functions.

Bug: tint:1834
Change-Id: Ic1a26525d7845d79eb6239bdeb2b73e05f586c24
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122606
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2023-03-09 01:20:16 +00:00
Dawn Autoroller 963d787b36 Roll ANGLE from 1023c18fe4ff to f1717ba9c36e (8 revisions)
1023c18fe4..f1717ba9c3

2023-03-08 mikes@lunarg.com Tests: Add Merge Dragons trace
2023-03-08 romanl@google.com Fix race condition in ProgramUseAndDestroyInTwoContexts
2023-03-08 angle-autoroll@skia-public.iam.gserviceaccount.com Manual roll Chromium from 4d26ea50cec7 to 52ec1cb28f1b (235 revisions)
2023-03-08 lexa.knyazev@gmail.com Add EXT_texture_filter_minmax stubs
2023-03-08 lexa.knyazev@gmail.com Support stencil texturing in WebGL
2023-03-08 i.nazarov@samsung.com Tests: Enable RunLockStepThreads OpenGL/GLES backend support.
2023-03-08 i.nazarov@samsung.com Vulkan: Fix use of pending Outside RenderPass CommandBuffer.
2023-03-08 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from eca4b370b5aa to fb9155b074e3 (9 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 angle-team+autoroll@google.com,senorblanco@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: senorblanco@google.com
Change-Id: I0cdd4d54efb6e6ed06c514b5d50ff645924d2062
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123360
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>
2023-03-09 01:16:58 +00:00
dawn-autoroll ff2fe5e69a Roll vulkan-deps from d03d09324f14 to 9eee852dba52 (118 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/d03d09324f14..9eee852dba52

Changed dependencies:
* glslang: 6d41bb9c55..cd2082e058
* spirv-cross: 4e2fdb2567..7512345f61
* spirv-headers: aa331ab0ff..1feaf4414e
* spirv-tools: 956114df28..42267721e1
* vulkan-headers: e8b8e06d09..a3dd2655a3
* vulkan-loader: 2015474294..e4895e86f7
* vulkan-tools: 27c28d4b40..5bcfa1605e
* vulkan-validation-layers: 5d2b7d957e..e894873f22

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 senorblanco@google.com,webgpu-developers@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: senorblanco@google.com
Change-Id: Ibbee01b84d3cc9f73ff18b912dcb69e22c34b5e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123340
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-03-09 00:55:53 +00:00
dan sinclair 03ee23ea9e [ir] Convert materialized nodes to constants
This CL updates the IR builder to convert materialized call expressions
directly into the resulting constant values.

Bug: tint:1718
Change-Id: I184478996afdd11b00ca946775eab6801b777f3c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122605
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-03-08 23:22:27 +00:00
Loko Kung af4ca3891f Update maxFragmentCombinedOutputResources on the different backends.
- Adds an e2e test to test writing to outputs when at the limit.

Bug: dawn:1665
Change-Id: I2b2b9c2d700be0e454dc945ed8e3e1fe6b191974
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122801
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-08 22:38:40 +00:00
Ben Clayton 2657b923c9 tint/writer/glsl: Fix vector `select`
mix of ivec is not core until later GLSL versions.
Just polyfill in the writer with ternary ops.

Change-Id: Ia0c35bf95842e03ef8447019f3264d01c11fd384
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123240
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Kokoro: Ben Clayton <bclayton@google.com>
2023-03-08 22:29:38 +00:00
Ben Clayton da353b4b39 tint: Flip evaluation order of assignment statements
Evaluate the LHS before the RHS.

Fixed: tint:1867
Change-Id: Ib63903ed4b1425007197a6da37f3bf54a495d88a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123120
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-08 21:48:45 +00:00
dan sinclair 43c5efa7e8 [ir] Add error helper to ir builder.
This CL adds a `add_error` to the IR builder.

Bug: tint:1718
Change-Id: Ifd7a2f6e015d423dbe23405816dba00f237a6c8c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122602
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-03-08 21:22:47 +00:00
dan sinclair 724a70f7a1 [ir] Add user functions, value constructors and value converters
This CL adds user function calls, value constructors and value
converters into the IR.

Bug: tint:1718
Change-Id: Iab59aa7d01b9d7831299d785f6e45e9fba12f7b5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122600
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-08 21:19:13 +00:00
Ben Clayton 51be3420b8 tint/writer/glsl: Fix emission of lowest i32 value
GLSL has the same behavior as MSL, in that -2147483648 is parsed as
a unary minus on '2147483648'. 2147483648 overflows an i32, so this
actually gets treated as -0.

Change-Id: Ibebd8b78a8840f18c438ed1d3d24dee486a65816
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123202
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-03-08 21:13:22 +00:00