Commit Graph

11469 Commits

Author SHA1 Message Date
Antonio Maiorano c73d673976 tint: add const eval vector accessor unit tests
Bug: tint:1581
Change-Id: I135c0cdc5d45c673aa156cd96ebad5c613545bd2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115504
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-23 21:09:10 +00:00
Antonio Maiorano b71898ea30 tint: add const eval array accessor unit tests
Bug: tint:1581
Change-Id: I0cbb16936bbc1c139e17cecd07007d418c6ee0fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115503
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-23 18:51:26 +00:00
Antonio Maiorano dfa92a9cb6 tint: Fix ProgramBuilder::WrapInFunction overload not being picked up
Before this change, the variadic function template version of
WrapInFunction would be selected when passing a utils::VectorRef<const
ast::Statement*>, even though an overload exists for that type. The
reason is that during type deduction, the compiler will select templates
over non-templates in its overload set. The only way around this was to
avoid type-deduction by explicitly casting the argument to
utils::VectorRef<const ast::Statement*>.

This CL adds a CanWrapInStatement metafunction that evaluates to true if
the arg type is one that could be passed to
ProgramBuilder::WrapInStatement. This is used to SFINAE in the variadic
args version of WrapInFunction.

Change-Id: I8aa3d69e2ce7324fd60b1b2a5906a51d51b549a3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115502
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-23 17:56:56 +00:00
dawn-autoroll 16024a982d Roll vulkan-deps from f17be85632ab to 70e74a2f82ab (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/f17be85632ab..70e74a2f82ab

Changed dependencies:
* vulkan-validation-layers: cb16c644de..8c0817e7e2

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 jrprice@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: jrprice@google.com
Change-Id: I2ad7d0094be8c6c3da645ce50dd1120c50249e1f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115580
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-12-23 16:00:09 +00:00
Dawn Autoroller 2c664b8daf Roll ANGLE from 295f6830970b to 8cbd74307078 (5 revisions)
295f683097..8cbd743070

2022-12-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3a028e4c1f4a to 70e74a2f82ab (6 revisions)
2022-12-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from bcbc10b1bed4 to 5f9ed9b16931 (3 revisions)
2022-12-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e376e31a56b1 to 97df6f551756 (274 revisions)
2022-12-23 syoussefi@chromium.org Vulkan: Use read/write depth/stencil layouts
2022-12-23 lexa.knyazev@gmail.com Add ANGLE_clip_cull_distance extension

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 jrprice@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: jrprice@google.com
Change-Id: I35c4b3699de454c5fd633268c55d063a3986f2c9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115560
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>
2022-12-23 15:44:44 +00:00
Dawn Autoroller e4848f7934 Roll SwiftShader from ff8cc02ea659 to 5f9ed9b16931 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ff8cc02ea659..5f9ed9b16931

2022-12-23 sugoi@google.com Removing myself from the SwiftShader OWNERS file

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 jrprice@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: jrprice@google.com
Change-Id: I68c22ca4617b1fe72f571190d575cfe734d2014b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115527
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-12-23 08:29:38 +00:00
dawn-autoroll e9112132e0 Roll vulkan-deps from 3a028e4c1f4a to f17be85632ab (5 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/3a028e4c1f4a..f17be85632ab

Changed dependencies:
* glslang: dcae187376..68935bc2c6
* spirv-tools: 077b09c32a..d87f61605b
* vulkan-validation-layers: a0a07df689..cb16c644de

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 jrprice@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: jrprice@google.com
Change-Id: Idfb74ab7d891fa3e673aad96a3a7d093a7aeb938
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115540
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-23 02:16:11 +00:00
Dawn Autoroller 418ee05c3d Roll ANGLE from 2c60b86e3565 to 295f6830970b (57 revisions)
2c60b86e35..295f683097

2022-12-23 cclao@google.com Vulkan: bufferRead should accommodate deferred endRenderPass
2022-12-23 cclao@google.com Vulkan: Dsiable enableAsyncPipelineCacheCompression
2022-12-22 ynovikov@chromium.org Disable building Mesa by default
2022-12-22 m.maiya@samsung.com Move BinaryStream to common and expose ShaderState to compiler
2022-12-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from fc4e0530422c to e376e31a56b1 (1084 revisions)
2022-12-22 cnorthrop@google.com Tests: Add Grimvalor trace
2022-12-22 lexa.knyazev@gmail.com Fix typo in EXTClipCullDistanceForFragmentShaderTest
2022-12-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c4d6d0f52ce0 to 3a028e4c1f4a (4 revisions)
2022-12-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 67f520305136 to bcbc10b1bed4 (5 revisions)
2022-12-22 syoussefi@chromium.org Vulkan: Add read/write depth/stencil layouts
2022-12-21 syoussefi@chromium.org Vulkan: Pass context to layout getters
2022-12-21 cclao@google.com Vulkan: Remove CommandQueue::mGarbageQueue
2022-12-21 cnorthrop@google.com Tests: Add Wayward Souls trace
2022-12-21 ynovikov@chromium.org Revert "Metal: expose Metal backend only on supported GPUs."
2022-12-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 29e87c1e6ee6 to c4d6d0f52ce0 (15 revisions)
2022-12-21 yuxinhu@google.com Add new vulkan_core.h include headers to IGNORE list
2022-12-20 sywow.choi@samsung.com Revert "Vulkan: Make available GLInternalFormatToGbmFourCCFormat"
2022-12-20 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 9f4465eccb37 to 5aa5b0809f05 (17 revisions)
2022-12-20 sywow.choi@samsung.com Revert "Fix defines redifintion in angle_common."
2022-12-20 kbr@chromium.org Metal: expose Metal backend only on supported GPUs.
2022-12-20 sywow.choi@samsung.com Revert "Fix link error with dma_buf_util_sources"
2022-12-20 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from a4da97db4f55 to fc4e0530422c (452 revisions)
2022-12-20 lexa.knyazev@gmail.com Support arbitrary clip and cull distance array sizes
2022-12-20 lexa.knyazev@gmail.com GL: Implement clip distance state emulation
2022-12-19 cnorthrop@google.com Tests: Add My Friend Pedro trace
2022-12-19 yuxinhu@google.com Skip Flaky Timeout InstancingTestES3.LargeDivisor on Windows Swangle
2022-12-19 syoussefi@chromium.org Vulkan: Create RenderPass2 by default
2022-12-19 abdolrashidi@google.com Make pending memory allocation type atomic
2022-12-19 cnorthrop@google.com Tests: Add Disney Mirrorverse trace
2022-12-19 syoussefi@chromium.org GLES1: Optimize texcoord varyings
2022-12-19 syoussefi@chromium.org GLES1: Reduce pressure on vertex input / varyings
2022-12-19 abdolrashidi@google.com Vulkan: Add memory log at allocation error
2022-12-19 m.maiya@samsung.com Vulkan: Bug fix in setupIndexedDraw
2022-12-19 syoussefi@chromium.org Vulkan: Feature for VK_EXT_rasterization_order_attachment_access
2022-12-19 cclao@google.com Vulkan: Remove ContextVk::retainResource and retainImage()
2022-12-19 sywow.choi@samsung.com Fix link error with dma_buf_util_sources
2022-12-19 syoussefi@chromium.org Vulkan: Re-enable async pipeline cache sync by default
2022-12-19 cclao@google.com Vulkan: Remove unnecessary usesBuffer() check
2022-12-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c943ccc4d398 to 29e87c1e6ee6 (3 revisions)
2022-12-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from c70b46423fc4 to 67f520305136 (2 revisions)
2022-12-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 276f2cb5e838 to a4da97db4f55 (1240 revisions)
2022-12-17 gman@chromium.org Add EGL_ANGLE_wait_until_work_scheduled extension
2022-12-16 sywow.choi@samsung.com GBM: Remove GBM_FORMAT_R16
2022-12-16 romanl@google.com Fix defines redifintion in angle_common.
2022-12-16 cclao@google.com Revert "D3D: Remove ResourceSerial"
2022-12-16 yuxinhu@google.com Revert "Make ANGLE program version only dependent on data that matters"
2022-12-16 sywow.choi@samsung.com Vulkan: Make available GLInternalFormatToGbmFourCCFormat
2022-12-16 cnorthrop@google.com Tests: Add Sonic Forces trace
2022-12-16 cnorthrop@google.com Tests: Add 20 Minutes Till Dawn trace
2022-12-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3f9a78474605 to c943ccc4d398 (5 revisions)
2022-12-15 yuxinhu@google.com Make ANGLE program version only dependent on data that matters
2022-12-15 cclao@google.com Vulkan: Add assert to ensure never setQueueSerial backwards
2022-12-15 jmadill@chromium.org Capture/Replay: Fix trace interpreter autogen inputs.
2022-12-15 romanl@google.com Fix --render-test-output-dir to work in TestSuite.
2022-12-15 cnorthrop@google.com Tests: Add Plants vs. Zombies Heroes trace
2022-12-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 22d5e1e91e82 to c70b46423fc4 (3 revisions)
2022-12-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a87c64cdfe8d to 3f9a78474605 (2 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 jrprice@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: jrprice@google.com
Change-Id: I8c95c0ba6a3371d9c1b9b925fc1ad7ef61a9187a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115526
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-23 02:13:05 +00:00
Antonio Maiorano 64c243e9e6 tint: add missing unit tests for const eval vector construction of AInt and
AFloat

Bug: tint:1581
Change-Id: Ic994fe50be6a73b215aabc8ec85fab9f31bcc8df
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115500
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: David Neto <dneto@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-22 22:08:48 +00:00
Dawn Autoroller ffcd024aaa Roll SwiftShader from bcbc10b1bed4 to ff8cc02ea659 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/bcbc10b1bed4..ff8cc02ea659

2022-12-22 nicolas.capens@gmail.com Remove VK_LUNARG_direct_driver_loading from supported extensions
2022-12-22 nicolas.capens@gmail.com Support LLVM 16+ API change

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 jrprice@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: jrprice@google.com
Change-Id: Icc7b237e4052db190793ec9aa9e11c26650aff93
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115367
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-22 17:13:19 +00:00
Antonio Maiorano 6b4622fb07 tint: add const eval array constructor tests
Bug: tint:1581
Change-Id: Ia6c4ba974b40cdff8dc28ddbd510189355ed27cb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115400
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-22 16:27:43 +00:00
James Price 906fc9df20 tint/uniformity: Add a NameFor helper
Use it everywhere, and inline some simple uses for brevity.

Change-Id: I27727feedfb1eaa3e811241a420c3fbed404e5b1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115381
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-22 14:32:54 +00:00
James Price a84ebc3af9 tint: Add forward declaration for CastableBase
This fixes the google3 build, which compiles headers in isolation.

Change-Id: I3c9a91caa75c6da1d9dcc17bb6d2aeb5834c197e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115440
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: James Price <jrprice@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-22 14:32:16 +00:00
dawn-autoroll 3bfced00e5 Roll vulkan-deps from ae97c0946cb9 to 3a028e4c1f4a (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/ae97c0946cb9..3a028e4c1f4a

Changed dependencies:
* vulkan-validation-layers: c557a0035f..a0a07df689

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 jrprice@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: jrprice@google.com
Change-Id: I1bf29a16fc3c8b1ea0d8695a2d32981c2fe4ec2e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115460
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-12-22 13:20:12 +00:00
Dawn Autoroller a1f5334e72 Roll SwiftShader from 8c1e83a1e2b2 to bcbc10b1bed4 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8c1e83a1e2b2..bcbc10b1bed4

2022-12-21 sugoi@google.com Direct driver loading
2022-12-21 swiftshader.regress@gmail.com Regres: Update test lists @ 8c1e83a1

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 jrprice@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: jrprice@google.com
Change-Id: I9e468222814be169716ed33e52f882ddd0f62938
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115363
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-22 04:15:38 +00:00
Gregg Tavares 6609f9cfb9 Workaround Metal Validation Issue for copying 3D textures to a buffer.
The metal validation layer complains when copying from a 3D texture to
a buffer if the stride for the destination buffer is larger then 2048
bytes.

Bug: dawn:1430
Change-Id: I6ba4508d71610c35dfb0fab7d2bebc91d37504e3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/113426
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2022-12-22 01:30:22 +00:00
James Price 0244804193 tint/uniformity: Avoid string allocations for node tags
Use std::initializer_list<std::string_view> for the tags passed to
CreateNode, and only concatenate them if debug mode is enabled.

Change-Id: Ida3662c52d72ba71bae3f91766dca6aaca89ee50
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115380
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: David Neto <dneto@google.com>
2022-12-22 00:51:18 +00:00
dawn-autoroll 8fbbd73ba3 Roll vulkan-deps from c4d6d0f52ce0 to ae97c0946cb9 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/c4d6d0f52ce0..ae97c0946cb9

Changed dependencies:
* spirv-tools: c5d2316430..077b09c32a

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 jrprice@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: jrprice@google.com
Change-Id: I1bd0a87a6fc4ede2ec879dbe52626b17a680a119
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115420
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-21 23:43:42 +00:00
James Price 857b1580c7 tint/uniformity: Handle pointer uniformity
This change is a necessary to support workgroupUniformLoad in a
following patch. Otherwise, there is no change to the set of shaders
that are accepted or rejected by the analysis.

We now distinguish between uniformity requirements on the contents of
a pointer parameter versus the pointer value itself when generating
tags for function parameters.

Whilst processing an expression, if we see a sem::Load node we pass a
flag down through child expressions to indicate that we will be
loading from the result. When processing an identifier expression, we
can then select between adding an edge to the source of the
pointer/reference versus the contents of the root identifier that it
corresponds to.

Since the pointers passed to atomic builtins can be uniform, we
special-case them to capture the fact that their return value is
always considered non-uniform.

The arrayLength builtin no longer needs special-casing.

Added many tests to cover various cases that are now captured
differently in the graph. There are two cases that are disabled as
they require variable pointers to trigger the uniformity violation.

Bug: tint:1780
Change-Id: I03edb65f22a6ffb0e7daf8b2f590f5de898e6262
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114861
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: David Neto <dneto@google.com>
2022-12-21 22:59:14 +00:00
Antonio Maiorano 1d77e2531c tint: add const eval of swizzle tests
Bug: tint:1581
Change-Id: I08d7279aed1a931072bd31735aa21fffdae2400f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115340
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-21 21:15:03 +00:00
Antonio Maiorano ffb322a096 tint: add bool member to const eval struct member access test
Bug: tint:1581
Change-Id: I65955745b9e4078368ba2b3797dd903e07238edd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115243
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-21 21:15:03 +00:00
Antonio Maiorano 309b10a8c5 tint: add const eval struct zero init tests
Bug: tint:1581
Change-Id: Id2562b288343229b1fc99f5ff78b6c3809532ddb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115242
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-21 21:15:03 +00:00
Antonio Maiorano 0890ecabda tint: add const eval zero init tests for scalars, vectors, matrices, and
arrays

Bug: tint:1581
Change-Id: Ib0024ddccd5107337e6711c6fa56b0efd68dde96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115241
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-21 21:15:03 +00:00
Antonio Maiorano 994b70feb9 tint: add AFloat and AInt const eval scalar constructor tests
Bug: tint:1581
Change-Id: I0cb190e3114f3fd1c68f4cb821399547830239a2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115240
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-21 21:15:03 +00:00
Antonio Maiorano bc44620d68 tint: implement short-circuiting of const eval bitcast
Bug: tint:1581
Change-Id: I6058dee593bf97f9dee202a80ced7b2551da0ba9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115220
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: James Price <jrprice@google.com>
2022-12-21 21:15:03 +00:00
Dawn Autoroller bf9c34642a Roll SwiftShader from f7de9e0637c2 to 8c1e83a1e2b2 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f7de9e0637c2..8c1e83a1e2b2

2022-12-21 swiftshader.regress@gmail.com Regres: Update test lists @ f7de9e06

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 jrprice@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: jrprice@google.com
Change-Id: I74196d732c834dbc201c11fbf5d4035be583c6f1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115208
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-12-21 15:14:11 +00:00
dawn-autoroll 799b413c7e Roll vulkan-deps from e121f25bdace to c4d6d0f52ce0 (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/e121f25bdace..c4d6d0f52ce0

Changed dependencies:
* vulkan-headers: 00671c64ba..fc90b60663

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 jrprice@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: jrprice@google.com
Change-Id: I26e0dc2f027f8f300701cfe6b71378fee9f02e73
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115281
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-12-21 10:47:46 +00:00
Jiawei Shao f8277d0ae4 Add toggle to warn the dst-alpha issue on Intel GPUs
Bug: dawn:1579
Change-Id: Ifdf09aefcdd62be82bd874a6e185b18ab96cb29a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114920
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-12-21 02:22:53 +00:00
Dawn Autoroller 0493c24875 Roll SwiftShader from 3b2177fcfcba to f7de9e0637c2 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3b2177fcfcba..f7de9e0637c2

2022-12-20 sugoi@google.com Update Vulkan headers to version 1.3.238

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 jrprice@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: jrprice@google.com
Change-Id: I32adf5bc4dbb8e4b8e528f352d99902d457f6665
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115205
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-12-21 01:22:10 +00:00
shrekshao 49a08b7668 Refix validation for command encoder pass encoding
According to latest spec, beginRenderPass/beginComputePass
don't throw validation error. Error still defers to
CommandEncoder::Finish()

Bug: dawn:1602
Change-Id: I5fd76f2c8951273a8dd82b02e20f076079354b60
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115120
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
2022-12-20 21:03:16 +00:00
dawn-autoroll a68ce9213f Roll vulkan-deps from 28ede018d9d4 to e121f25bdace (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/28ede018d9d4..e121f25bdace

Changed dependencies:
* glslang: f9b760e6c7..dcae187376
* spirv-tools: 5bec0884cf..c5d2316430
* vulkan-validation-layers: df33af3b22..c557a0035f

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 jrprice@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: jrprice@google.com
Change-Id: I4bef5c82e9a6af341017435037f5d44405719c0a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115261
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-20 20:50:04 +00:00
James Price eb34a764a8 tint/uniformity: Fix handling of continuing block
Variables declared inside a loop block were not visible to the
continuing block. Special-case the continuing block by processing it
inside the loop-body block statement, instead of afterwards.

Change-Id: I05bc906bd98b24295dc91116b9ef8d8ef02c3af3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114860
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-20 20:12:51 +00:00
James Price efc9df4695 tint/uniformity: Fix issues with for-loops
Variables declared in for-loop initializers were not being tracked
properly across iterations as a check was wrongly determining them to
be declared inside the loop body.

Also fixes an issue where variables declared in for-loop initializers
were still considered to be in scope after loop exit.

Change-Id: I2ce3a519be45c8daba31bf00e8b2614f0bd6a2de
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114364
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
2022-12-20 19:08:56 +00:00
Antonio Maiorano 056618541f tint: const eval of bitcast operator
Bug: tint:1581
Change-Id: Ida43b34118282eeb99ae099c91a6465eb3040ca6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115080
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-12-20 18:34:06 +00:00
Antonio Maiorano ffa83ad1f7 tint: make utils::Bitcast not trigger gcc warning
When useing Bitcast to or from a class type, gcc warns even if the type
is trivially copyable. Fixed this by static_asserting that both types
are trivially copyable, and casting the pointers to std::byte*.

Change-Id: Ibb420f2dcdd35cfb187d74983fa8ab9b50d10c85
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115180
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-20 17:13:39 +00:00
Yuly Novikov c4673b7386 Suppress couple more WebGPU CTS flakes on Win Intel
From:
https://luci-milo.appspot.com/p/chromium/builders/ci/Dawn%20Win10%20x64%20Experimental%20Release%20%28Intel%29/641
https://luci-milo.appspot.com/p/chromium/builders/ci/Dawn%20Win10%20x86%20Experimental%20Release%20%28Intel%29/433

Bug: None
Change-Id: Icb7e3b7fd3a0920cd74677717e5ec061b9fbe78e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115160
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-12-20 16:51:34 +00:00
dawn-autoroll 1058e7aa50 Roll vulkan-deps from 3a484e08ceca to 28ede018d9d4 (5 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/3a484e08ceca..28ede018d9d4

Changed dependencies:
* spirv-tools: cc81529f4b..5bec0884cf
* vulkan-loader: 96488e2b2e..bf28c824b8

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 jrprice@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: jrprice@google.com
Change-Id: I0497982edb19802538766b2bc55e35624b093bb3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115046
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-12-20 07:47:36 +00:00
Austin Eng 5cc118bde7 Clear reference to MTLTexture on TextureView::DestroyImpl
Bug: dawn:1355
Change-Id: I834b02a05d50c39b1a8d272e2d437d7ce1f96fb5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115061
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
2022-12-19 23:36:00 +00:00
Dawn Autoroller 13e48132c0 Roll SwiftShader from 67f520305136 to 3b2177fcfcba (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/67f520305136..3b2177fcfcba

2022-12-19 sugoi@google.com Reland "Float only writeColor" only

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 jrprice@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: jrprice@google.com
Change-Id: If6ec6570785e7c48ce3f0599604c50a40e1dbe8f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115041
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-19 20:32:30 +00:00
Brandon Jones b38b3b0f8c Implement AlwaysResolveIntoZeroLevelAndLayer globally
Previously this toggle was implemented only for the Metal backend, but
a need for it was identified on Android as well. This change moves the
implementation to the backend-agnostic command encoder recording so that
it works for all backends. Fundamentally it's still doing the same
thing, however: Swapping resolve targets that point at a non-zero mip
level or layer with a temporary texture and then performing a copy once
the render pass has ended.

Bug: dawn:1569
Change-Id: I292860cc74f653b2880e727d2ef3a7dfa3f10b91
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106040
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-19 19:46:12 +00:00
Takahiro 915e55a0d8 Add Buffer.GetMapState()
Bug: dawn:1521
Change-Id: I68962a4d6b17867cd17cfcb3a17910a2007764fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/111924
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Takahiro <hogehoge@gachapin.jp>
2022-12-19 19:06:51 +00:00
dawn-autoroll 5abda5fa2c Roll vulkan-deps from 29e87c1e6ee6 to 3a484e08ceca (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/29e87c1e6ee6..3a484e08ceca

Changed dependencies:
* vulkan-headers: 63637cb1c6..00671c64ba
* vulkan-validation-layers: 081dc9e60f..df33af3b22

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 jrprice@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: jrprice@google.com
Change-Id: I667d9790fc571b32e879ea92d660b02cbfd7fb6b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115060
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-12-19 18:41:36 +00:00
Ben Clayton ce93a6b224 tint: Replace type::UniqueNode::Hash() virtual with field
Virtual methods are expensive to call, and hashes are frequently tested.
The hash must be immutable, so just calculate it once in the constructor and store it as an immutable field.

Change-Id: I9d29fb3fc074e57e7af91367768a47193baa40f1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114780
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
2022-12-19 17:07:29 +00:00
Yuly Novikov ada5e7b0f9 Suppress WebGPU tests flaky on Win Intel UHD630 driver 31.0.101.2111
Seen on experimental bots since tests were enabled, e.g.:
https://luci-milo.appspot.com/ui/p/chromium/builders/ci/Dawn%20Win10%20x64%20Experimental%20Release%20(Intel)/588/overview
https://luci-milo.appspot.com/ui/p/chromium/builders/ci/Dawn%20Win10%20x86%20Experimental%20Release%20(Intel)/371/overview

Bug: None
Change-Id: I541cb895690ce2fa488d350735f6d0e73cd6b5d0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/115020
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-12-19 16:24:27 +00:00
Corentin Wallez 20a6ca0041 generator_lib.py: Fix exception when racing for dir creation.
The generator_lib.py processing of file renders would check that the
output directory doesn't exist and if needed, would create it. However
by default makedirs errors if the path already exists. This caused
issues when multiple generator_lib.py generators with the same output
dir would run in parallel in builds, because there can be a race where:

 - GeneratorA: Check os.path.exists -> returns False
 - GeneratorB: Check os.path.exists -> returns False
 - GeneratorB: os.makedirs -> Ok
 - GeneratorA: os.makedirs -> Exception, fails the build.

Instead use os.makedirs(exist_ok=True) inconditionally to remove this
racy behavior.

Bug: None
Change-Id: I5cb401a1df11a3640faeea94c15cb54236edc05a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114521
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-12-19 11:14:54 +00:00
Takahiro ad541a7cdd Immediate Buffer.MapAsync() rejection if pending map in Wire
This immediate rejection has been implemented in Native but
hasn't been yet in Wire. This commit adds the implementation
to Wire.

Also the commit changes the MapAsync callback firing timing
if pending map buffer is unmapped or destroyed. With this
commit the callback will be fired immediately Unmap or
Destroy is called to match the WebGPU spec. Currently the
callback is fired when the client receives a response from
server but it mismatches the spec.

Change-Id: Ia48d62be31912fd0384e23271e9de516f9d71d6c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/113607
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Takahiro <hogehoge@gachapin.jp>
Reviewed-by: Austin Eng <enga@chromium.org>
2022-12-17 04:24:05 +00:00
James Price 0fcc00e22a tint/uniformity: Fix debug graph output
The code that was ifdef'd out no longer compiled.

Change-Id: I6243cc6a3584c555505c4bee68ec02bbb96801c3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/113430
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
2022-12-17 02:21:36 +00:00
Ben Clayton 2f9a98870e tint: Implement sem::Load
The resolver now wraps sem::Expression objects with a sem::Load object
anywhere that the load rule is invoked. sem::Expression provides an
`UnwrapLoad()` method that returns the inner expression (or
passthrough, if no load is present), which is analaguous to
Type::UnwrapRef().

The logic for alias analysis in `RegisterLoadIfNeeded` has been folded
into the new `Resolver::Load` method.

Fixed up many transforms and tests. The only difference in output is
for a single SPIR-V backend test, where some IDs have changed due to
slight re-ordering of when expressions are generated.

There may be further clean-ups possible (e.g. removing unnecessary
calls to `UnwrapRef`, and simplifying places in the SPIR-V writer or
transforms that deal with memory accesses), but these can be addressed
in future patches.

Fixed: tint:1654
Change-Id: I69adecfe9251faae46546b64d0cdc29eea26cd4e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99706
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-12-17 02:20:04 +00:00
dawn-autoroll 57ca8cffa4 Roll vulkan-deps from c943ccc4d398 to 29e87c1e6ee6 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/c943ccc4d398..29e87c1e6ee6

Changed dependencies:
* spirv-tools: 5a78d798f7..cc81529f4b
* vulkan-headers: 75a6b83f21..63637cb1c6
* vulkan-validation-layers: 3784a0d8b8..081dc9e60f

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: Id31d7f905cdcebf6a4ea8a3aa35ca55b5ab1c006
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114880
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>
2022-12-17 00:55:16 +00:00
Yuly Novikov 241d9a2f9f Suppress some WebGPU tests with validation on Win Intel
Already suppressed without validation.
Trying to enable tests with validation in crrev.com/c/4097070

Bug: None
Change-Id: I40ae8d31d644140fa4e6df22b875c2f11e966b60
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114840
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
2022-12-16 23:37:05 +00:00