Antonio Maiorano
2f7730a16e
Manually generate HLSL skip files for vk-gl-cts e2e tests
...
It seems we haven't run our e2e tests with FXC validation in a long time
- at least not since we've added the vk-gl-cts corpus.
Locally disabled exclusion of "/test/vk-gl-cts/" in test-runner/main.go,
and ran:
./test/test-all.sh out/build/x64-Debug/tint.exe --format hlsl --fxc --generate-skip
These will need to be manually removed once the skips aren't needed by
deleting them all, and re-running as above.
Bug: tint:940
Change-Id: I27e395e69f5e1bd7d234f3155f40396b751720d4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71981
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2021-12-08 04:26:58 +00:00
Zhaoming Jiang
53137bd57d
Remove wgpu::ErrorFilter::None
...
Remove wgpu::ErrorFilter::None from Dawn as it is removed from the
specification.
Bug: dawn:1206
Change-Id: If8ec2722cf1b2bad380011f191f296f0e591646d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71607
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com >
2021-12-08 02:42:17 +00:00
Dawn Autoroller
8b9e591f48
Roll Tint from c55c7715db to b2bbb14bd4 (2 revisions)
...
https://dawn.googlesource.com/tint.git/+log/c55c7715dbc8..b2bbb14bd413
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC cwallez@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: dawn:1203
Tbr: cwallez@google.com
Change-Id: Ia280d17fc1e74aa2ae0199f4a9ec065aff67684a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71980
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-07 20:03:37 +00:00
Dawn Autoroller
227c9c9fc4
Roll ANGLE from ca3dfbe78d73 to f4553165703a (3 revisions)
...
ca3dfbe78d..f455316570
2021-12-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 5b3be708ab2f to 5c0e64524982 (3 revisions)
2021-12-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 558e41ede9d4 to 111e348dc9b4 (338 revisions)
2021-12-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from a465cca8ec8d to 3e61a772b248 (4 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 cwallez@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: cwallez@google.com
Change-Id: I1003d39e32b2fe82e80b162f17e5a043a63ea53e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71941
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-07 15:33:36 +00:00
Dawn Autoroller
b543acf567
Roll Tint from 9c7b39f365 to c55c7715db (1 revision)
...
https://dawn.googlesource.com/tint.git/+log/9c7b39f365dc..c55c7715dbc8
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC cwallez@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: cwallez@google.com
Change-Id: I0b8042522154829b31fbf94a31f4787c767e50cd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71940
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-07 14:55:36 +00:00
Antonio Maiorano
b2bbb14bd4
Add TINT_SYMBOL_STORE_DEBUG_NAME option to help debugging the AST
...
If TINT_SYMBOL_STORE_DEBUG_NAME is 1, Symbol instances store a
`debug_name_` member initialized with the name of the identifier they
represent. This member is not exposed, but is useful for debugging
purposes.
Bug: tint:1331
Change-Id: Ia98e266aefc1ca26bbf30c6ece73d9eac8afdbd7
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71780
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
2021-12-07 14:43:17 +00:00
Antonio Maiorano
cf3880201b
Make HLSL validation run with same flags as Dawn
...
FXC is buggy, and I recently landed changes in Dawn to run with "/O0"
rather than /"O2" because of these bugs. Let's make sure Tint end-to-end
tests do the same. Also do the same when running against DXC.
Bug: dawn:1203
Change-Id: I1a30f16dee8306bd645d87b3ccb0cc87691c5972
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71800
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2021-12-07 14:40:47 +00:00
Ben Clayton
c55c7715db
Fix Kokoro ASAN builds
...
The VM has been updated to Kokoro 14.04, and now the docker instance
requires escalated privileges in order to run some sanitizer builds.
Change-Id: Icebbb1597dcdb67a854cb61ff7b0c0c11952b7f2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71921
Auto-Submit: Ben Clayton <bclayton@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2021-12-07 13:54:19 +00:00
Corentin Wallez
0766ce6ed1
Vulkan: Load procs for VK_KHR_get_memory_requirements2
...
Bug: dawn:1223
Change-Id: I14f6bfd66ac35a2d80b70fd121bd3be5e9670352
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71761
Reviewed-by: Austin Eng <enga@chromium.org >
Reviewed-by: Loko Kung <lokokung@google.com >
Commit-Queue: Corentin Wallez <cwallez@chromium.org >
2021-12-07 09:32:08 +00:00
Corentin Wallez
87ef49c461
Require semicolon after DAWN_TEST_PARAM_STRUCT
...
Bug: None
Change-Id: I6b9fb69c6d02abb2a210f10d91b02c5b77b48cdc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71760
Reviewed-by: Austin Eng <enga@chromium.org >
Reviewed-by: Brandon Jones <bajones@chromium.org >
Commit-Queue: Corentin Wallez <cwallez@chromium.org >
2021-12-07 09:29:46 +00:00
Dawn Autoroller
683401528f
Roll ANGLE from 60e457b8badc to ca3dfbe78d73 (6 revisions)
...
60e457b8ba..ca3dfbe78d
2021-12-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 840fab92609d to 558e41ede9d4 (627 revisions)
2021-12-06 syoussefi@chromium.org Vulkan: Fix xfb query ASSERT on end
2021-12-06 lfy@google.com Validate SamplerFormat
2021-12-06 ianelliott@google.com Point to ANGLE Wrangler schedule website in document
2021-12-06 lfy@google.com Vulkan: remove staged updates on storage set
2021-12-06 jmadill@chromium.org FrameCapture: Add ReplayWriter helper 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 cwallez@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: cwallez@google.com
Change-Id: Id3b092e04c0c4071f1ae48144c5dcc401e458bf3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71801
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-07 02:05:26 +00:00
Jiawei Shao
6a886b47de
Align offset to 4 bytes in writeTexture on depth stencil textures
...
This patch fixes a bug in the allocation of internal staging buffer
for Queue::WriteTexture() that we must ensure the buffer offset to
be 4 bytes when calling Queue::WriteTexture() on depth stencil
textures as is restricted by Vulkan SPEC.
BUG=dawn:1213
TEST=dawn_end2end_tests
Change-Id: Ia2d073ef12d48baff42fca97005c1185c9560f1c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71605
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com >
2021-12-07 01:33:36 +00:00
fujunwei
c7d4f2c9f1
Make templates webgpu_cpp.h and webgpu_cpp_print.h flexible
...
Rename webgpu_cpp.h to api_cpp.h and webgpu_cpp_print.h to api_cpp_print.h.
BUG=dawn:1201
Change-Id: Icceee0fd70fb6497a9e2b0891b5c5843787593f9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71720
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Junwei Fu <junwei.fu@intel.com >
2021-12-07 00:46:35 +00:00
Loko Kung
4539a48355
Revert "Bump maxUniformBindingSize to 2^16 from 2^14"
...
This reverts commit 1a57ee9d4e .
Reason for revert: Swiftshader does not support 2^16 at the moment, and this is causing all Swiftshader tests to be skipped silently.
Original change's description:
> Bump maxUniformBindingSize to 2^16 from 2^14
>
> This was upped in https://github.com/gpuweb/gpuweb/pull/2159
>
> Bug: dawn:1173
> Change-Id: I98d46b9b5a339280d21ddcb2ab039ce7ebce4ec3
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71608
> Commit-Queue: Brandon Jones <bajones@chromium.org >
> Auto-Submit: Corentin Wallez <cwallez@chromium.org >
> Reviewed-by: Brandon Jones <bajones@chromium.org >
TBR=cwallez@chromium.org ,enga@chromium.org ,bajones@chromium.org ,bajones@google.com ,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: Ib7d6023adac3f99b8e7238035eed2a16f2ced6d0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: dawn:1173
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71840
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Loko Kung <lokokung@google.com >
2021-12-06 23:06:09 +00:00
Austin Eng
58c655b6b3
Complete per-backend AdapterDiscoveryOptions
...
D3D12, OpenGL, and OpenGLES have their own backend-specific
AdapterDiscoveryOptions. Add the same for Vulkan and Metal so we can
selectively discover just Vulkan or Metal adapters.
The Vulkan options include a boolean forceSwiftShader to force
Dawn to discover only SwiftShader on the Vulkan backend.
Also, refactor D3D12's DiscoverDefaultAdapters to simply call
DiscoverAdapters to match the other backends.
Bug: chromium:1266550
Change-Id: I137f94b40084b2d0ddeda39b6b7ef20f033d8a4b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/69522
Commit-Queue: Austin Eng <enga@chromium.org >
Reviewed-by: Loko Kung <lokokung@google.com >
2021-12-06 20:58:56 +00:00
Austin Eng
652293f14c
Support multiple Vulkan instances in the Vulkan backend
...
This will allow the Vulkan backend connection to be initialized, and
then selectively discover adapters on just one of the instances.
This is needed so that discovery of the fallback WebGPU adapter can
avoid initializing any adapters other than SwiftShader.
Bug: chromium:1266550
Change-Id: Ia8b31c0239da89a41aa89f1c09a66e9e56e10d95
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/69980
Reviewed-by: Loko Kung <lokokung@google.com >
Commit-Queue: Austin Eng <enga@chromium.org >
2021-12-06 19:31:12 +00:00
Corentin Wallez
1a57ee9d4e
Bump maxUniformBindingSize to 2^16 from 2^14
...
This was upped in https://github.com/gpuweb/gpuweb/pull/2159
Bug: dawn:1173
Change-Id: I98d46b9b5a339280d21ddcb2ab039ce7ebce4ec3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71608
Commit-Queue: Brandon Jones <bajones@chromium.org >
Auto-Submit: Corentin Wallez <cwallez@chromium.org >
Reviewed-by: Brandon Jones <bajones@chromium.org >
2021-12-06 16:17:21 +00:00
Dawn Autoroller
4cccaaa4cf
Roll Tint from 05eedd81b0 to 9c7b39f365 (1 revision)
...
https://dawn.googlesource.com/tint.git/+log/05eedd81b018..9c7b39f365dc
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: kainino@google.com
Change-Id: I84d9667a939cab10e9db8098cbce6d2d5b6e2b7d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71741
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-06 15:23:26 +00:00
Ben Clayton
9c7b39f365
msl: Explicity validate against MSL 1.2
...
Fixed: tint:1327
Change-Id: I7d2e182f60c42894410500f393a1235d37efe5e1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71680
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: James Price <jrprice@google.com >
Reviewed-by: David Neto <dneto@google.com >
2021-12-06 13:02:36 +00:00
Dawn Autoroller
13d6af93fb
Roll ANGLE from 10e5f34d1439 to 60e457b8badc (1 revision)
...
10e5f34d14..60e457b8ba
2021-12-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 9970c397e55e to 5b3be708ab2f (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 kainino@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: kainino@google.com
Change-Id: I838baa3cc9d1f2fe2d8c08031221edc9530ee096
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71740
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-06 12:18:45 +00:00
fujunwei
3a464767a5
Make the prefix of proc table configurable in api.json
...
Add a metadata to configure the prefix of proc table and Make proc table
flexiable with the prefix and declared functions.
BUG=dawn:1201
Change-Id: Id28e5521506fa5dc8efca90a7883fbd3dd548e8d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71526
Commit-Queue: Junwei Fu <junwei.fu@intel.com >
Reviewed-by: Austin Eng <enga@chromium.org >
2021-12-05 05:29:44 +00:00
Dawn Autoroller
1c7d3efcd0
Roll ANGLE from 9408adceaeb9 to 10e5f34d1439 (4 revisions)
...
9408adceae..10e5f34d14
2021-12-04 shrekshao@google.com Revert "Decouple gl_BaseVertex/gl_BaseInstance uniforms"
2021-12-04 abdolrashidi@google.com Reland "Vulkan: Implement GL_EXT_multi_draw_indirect"
2021-12-04 ianelliott@google.com Vulkan: Resize deviceExtensionProps to deviceExtensionCount
2021-12-03 ianelliott@google.com Reland: Vulkan: Use vkResetQueryPoolEXT when available
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 kainino@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: kainino@google.com
Change-Id: Ie56e028688e0110f0b975da1f050c6c7017b7170
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71666
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-04 14:02:16 +00:00
Kai Ninomiya
5db89fbd38
Fix typo in DmaBuf tests
...
Caused roll failure starting here:
https://chromium-review.googlesource.com/c/chromium/src/+/3314932/
Bug: None
Change-Id: I8f348a4fea243364fefc01f902add33abff66d1d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71700
Auto-Submit: Kai Ninomiya <kainino@chromium.org >
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Austin Eng <enga@chromium.org >
2021-12-04 01:51:49 +00:00
Dawn Autoroller
bb8cfb3ab4
Roll ANGLE from f58b8aba0671 to 9408adceaeb9 (7 revisions)
...
f58b8aba06..9408adceae
2021-12-03 bsheedy@chromium.org Add Gold git main method
2021-12-03 cnorthrop@google.com Vulkan: Allow nonconformant EXT_gpu_shader5
2021-12-03 syoussefi@chromium.org Fix changing attached renderbuffer from MSRTT to non-MSRTT
2021-12-03 lfy@google.com Fix flakiness in CpuTimeSleepy
2021-12-03 jmadill@chromium.org FrameCapture: Clean up 'WriteCppReplayFunctionWithParts'.
2021-12-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 933bb8aaaef9 to 9970c397e55e (7 revisions)
2021-12-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f9c39655a610 to a465cca8ec8d (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 kainino@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: kainino@google.com
Change-Id: I194ad24464779255127790dc3b4acdac85d046e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71665
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-04 00:44:58 +00:00
Dawn Autoroller
80646c10a7
Roll Tint from 2ec1393f31 to 05eedd81b0 (6 revisions)
...
https://dawn.googlesource.com/tint.git/+log/2ec1393f31a4..05eedd81b018
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: kainino@google.com
Change-Id: I0405a59e62da648c5a867e3e5503abc024052ff1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71664
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-03 23:46:08 +00:00
Ben Clayton
05eedd81b0
writer/msl: Only use [[invariant]] on MSL 2.1+
...
This is not supported on older versions.
This behavior was agreed by the WGSL core group:
https://github.com/gpuweb/gpuweb/issues/893#issuecomment-745537465
Bug: tint:1327
Change-Id: I1a0459068c438e625ae9d99fe4a044a96f2db57e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71684
Reviewed-by: David Neto <dneto@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2021-12-03 21:58:53 +00:00
Ben Clayton
cc05d89820
writer/msl: Replace use of 'auto' with actual return type
...
Fixes MSL 1.2 error:
'auto' return without trailing return type; deduced return types are a C++14 extension
Bug: tint:1327
Change-Id: I5956aadf6b28b605b07c9681716ac4b3e31d804a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71683
Reviewed-by: David Neto <dneto@google.com >
Reviewed-by: James Price <jrprice@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2021-12-03 21:50:23 +00:00
Ben Clayton
c830130bb8
resolver: Fixes for bitcasts
...
Fix dependency graph traversal for bitcasts. These were not being traversed, leading to an ICE if the bitcast type was an alias, as the symbol was not resolved for later use by the resolver.
Add missing validation for bitcasts. We were permitting any bitcast that wasn't a being cast to a pointer type, when the spec only allows:
* numeric_scalar to numeric_scalar
* vecN<numeric_scalar> to vecN<numeric_scalar>
Add lots of tests.
Fixed: chromium:1276320
Change-Id: I9e5487ec7649ac543f73fc878e7e282bf932d8cb
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71681
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2021-12-03 21:29:13 +00:00
Ben Clayton
b9e8a0b87d
writer/spirv: Add tests for automatic OpReturnValue
...
As requested at:
https://dawn-review.googlesource.com/c/tint/+/71604/5/src/writer/spirv/builder_if_test.cc#476
Bug: tint:1302
Change-Id: I661f877beb44f999e17f2769b4aa46b22180bbb9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71682
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: David Neto <dneto@google.com >
2021-12-03 19:19:33 +00:00
Dawn Autoroller
10ec3cad2d
Roll Tint from 8e39ffd512 to 2ec1393f31 (3 revisions)
...
https://dawn.googlesource.com/tint.git/+log/8e39ffd5122e..2ec1393f31a4
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: kainino@google.com
Change-Id: Ic24202f3528f72f7ec12bab2692481faecef94bc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71663
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-03 18:07:58 +00:00
Ben Clayton
ea3eee9885
resolver: Migrate validation to behavior analysis
...
Migrate some of the validation logic over to use the results of behavior
analysis.
The most significant changes are:
* Unreachable-statements now consider merge-points of control flow. For
example, if all branches of a if-statement or switch-statement either
return or discard, the next statement will be considered unreachable.
* Unreachable statements are no longer an error, but a warning. See
https://github.com/gpuweb/gpuweb/issues/2378 .
* Statements that follow a loops that does not break, or have a
conditional will now be considered unreachable.
* Unreachable statements produced by the SPIR-V reader are now removed
using the new RemoveUnreachableStatements transform.
Some other new changes include additional validation for the continuing
block for for-loops, to match the rules of a loop continuing block.
The new cases this validation is testing for are not expressible in
WGSL, but some transforms may produce complex continuing statements that
might violate these rules. All the writers are able to decay these
complex for-loop continuing statements to regular loops.
Bug: tint:1302
Change-Id: I0d8a48c73d5d5c30a1cddf92cc3383a692a58e61
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71500
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: David Neto <dneto@google.com >
2021-12-03 17:51:48 +00:00
Ben Clayton
c270322884
writer/spirv: Fix trailing emission of OpReturn
...
writer::spirv::Function attempted to append a trailing OpReturn if the
function does not end with a terminating instruction. This wasn't
considering functions that have a non-void return type.
This has now been moved to spirv::Builder::GenerateFunction(),
where we can actually examine the function return type, and generate a
zero-expression to return if we need to.
Note: this was masked by WGSL validation that required all functions to
end with a return statement.
Bug: tint:1302
Change-Id: Iddfeda25a956622c318b8235dc6fc093a2a5c26d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71604
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: David Neto <dneto@google.com >
2021-12-03 17:51:48 +00:00
Corentin Wallez
c6d3a840da
Replace reinterpret_cast with FromAPI/ToAPI where possible
...
This brings more type safety to the code and is marginally more
readable.
Bug: None
Change-Id: I0330a8a8e95cd9b8b531af266acd8fdc50c50460
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71606
Reviewed-by: Brandon Jones <bajones@chromium.org >
Reviewed-by: Austin Eng <enga@chromium.org >
Commit-Queue: Austin Eng <enga@chromium.org >
Auto-Submit: Corentin Wallez <cwallez@chromium.org >
2021-12-03 16:47:18 +00:00
Ben Clayton
2ec1393f31
main: Print the WGSL on reader/spirv error diagnostics
...
Just having a "error: blah" emitted without any additional context is not helpful without seeing the parsed SPIR-V as WGSL.
Change-Id: I6bf665f7fd3ce2637ec1ab020b2215f7fd5ee482
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71603
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: James Price <jrprice@google.com >
2021-12-03 16:19:53 +00:00
Ben Clayton
3298625760
resolver: Implement Behavior Analysis
...
This change implements the behavior analysis for expressions and
statements as described in:
https://www.w3.org/TR/WGSL/#behaviors
This CL makes no changes to the validation rules. This will be done as a
followup change.
Bug: tint:1302
Change-Id: If0a251a7982ea15ff5d93b54a5cc5ed03ba60608
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/68408
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: David Neto <dneto@google.com >
2021-12-03 15:49:34 +00:00
Ben Clayton
bf39c8fb19
sem: Replace SwitchCaseBlockStatement with CaseStatement
...
The SwitchCaseBlockStatement was bound to the BlockStatement of an ast::CaseStatement, but we had nothing that mapped to the actual ast::CaseStatement.
sem::CaseStatement replaces sem::SwitchCaseBlockStatement, and has a Block() accessor, providing a superset of the old behavior.
With this, we can now easily validate the `fallthrough` rules directly, instead of scanning the switch case. This keeps the validation more tigtly coupled to the ast / sem nodes.
Change-Id: I0f22eba37bb164b9e071a6166c7a41fc1a5ac532
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71460
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
2021-12-03 15:23:52 +00:00
Dawn Autoroller
9dc3c0bc86
Roll Tint from f71784fc2b to 8e39ffd512 (1 revision)
...
https://dawn.googlesource.com/tint.git/+log/f71784fc2b2a..8e39ffd5122e
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: kainino@google.com
Change-Id: Ie61bd37eec63e4c9b33bc66193245c4b28612087
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71662
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-03 13:14:18 +00:00
Ben Clayton
8e39ffd512
sem: Add constructor field to sem::Variable
...
Produces a direct SEM -> SEM pointer, reducing AST <-> SEM hopping.
Change-Id: I233b4c47d4e55b5f2c6e14ed08699a302b8fb64d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71321
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@chromium.org >
Reviewed-by: James Price <jrprice@google.com >
2021-12-03 11:42:43 +00:00
Dawn Autoroller
e8965c9156
Roll ANGLE from f3052589f723 to f58b8aba0671 (2 revisions)
...
f3052589f7..f58b8aba06
2021-12-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from d666676e2702 to 840fab92609d (514 revisions)
2021-12-02 j.vigil@samsung.com EGL: deferredFlush fix for PRESENT_MODE_SHARED
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 kainino@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: kainino@google.com
Change-Id: I8bd414d1a9ec9140cf0b5146f3d63c381506c1c3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71661
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-03 11:10:49 +00:00
Dawn Autoroller
b6c1a51775
Roll ANGLE from 29babe0fdc44 to f3052589f723 (3 revisions)
...
29babe0fdc..f3052589f7
2021-12-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from cb8be59599df to 933bb8aaaef9 (25 revisions)
2021-12-02 timvp@google.com Revert "Vulkan: Implement GL_EXT_multi_draw_indirect"
2021-12-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ff91ac52f4b7 to f9c39655a610 (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 kainino@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: kainino@google.com
Change-Id: Ifb97dbca09345c174ab94ba031bdbd2f11fc7e30
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71660
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-02 22:20:10 +00:00
Brandon Jones
d3105bfa47
Implement GPUCommandEncoder::ClearBuffer
...
Implements ClearBuffer for all backends.
Bug: dawn:1170
Change-Id: Ifc687d55727821c4fc134bf95020794c9d325025
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/68642
Reviewed-by: Kai Ninomiya <kainino@chromium.org >
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
Commit-Queue: Brandon Jones <bajones@chromium.org >
2021-12-02 21:43:49 +00:00
Shrek Shao
2bf99905a7
Fix google3 license related issues
...
Append BSD license to LICENSE.
Change-Id: Ie6688396bc06cdf4e34add729134454054dd4b31
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71442
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Shrek Shao <shrekshao@google.com >
2021-12-02 21:25:58 +00:00
Corentin Wallez
959f1da637
Roll Vulkan headers to 1.2.201
...
Also delete vulkan.hpp that we don't use, and vulkan_fuchsia_extras that
have since then been upstreamed.
Also updates the fuchsia external import code to use the non-temp
extension.
Bug: dawn:221
Change-Id: I23e1bfedc5a18731be1e58d0bae1bddf6b0f45fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71601
Reviewed-by: Austin Eng <enga@chromium.org >
Reviewed-by: Loko Kung <lokokung@google.com >
Commit-Queue: Corentin Wallez <cwallez@chromium.org >
2021-12-02 20:27:58 +00:00
Brian Sheedy
75f0f29507
Fix test suppression macros
...
Changes several DAWN_TEST_UNSUPPORTED_IF macros that were erroneously
used to DAWN_SUPPRESS_TEST_IF.
Bug: dawn:1216, dawn:1217
Change-Id: Iaa0d7eb1b3aad8c0b11ff395cebaff0f15631beb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71524
Commit-Queue: Brian Sheedy <bsheedy@google.com >
Commit-Queue: Austin Eng <enga@chromium.org >
Auto-Submit: Brian Sheedy <bsheedy@google.com >
Reviewed-by: Austin Eng <enga@chromium.org >
2021-12-02 20:25:58 +00:00
Dawn Autoroller
b8ac8b5c7a
Roll Tint from abf4f17b8e to f71784fc2b (1 revision)
...
https://dawn.googlesource.com/tint.git/+log/abf4f17b8e62..f71784fc2b2a
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: dawn:1082
Tbr: kainino@google.com
Change-Id: I61f0b7e8e8445437dc2455a0d8f605a9e5f38fbb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71640
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-02 20:00:49 +00:00
Austin Eng
2d0007ca8f
Don't connect to backends that aren't needed
...
Change backend connection in Instance.cpp to store a bitset of
backends that have been connected. This lets us only connect to a
single backend if AdapterDiscoveryOptions are passed explicitly,
and track which connections have/have not been made. Later, we can
connect to the rest of the backends if more are requested.
This is part of some improvements to the existing code so we can
selectively discover adapters and control discovery of the
high-performance, low-power, and fallback WebGPU adapters.
Bug: chromium:1266550
Change-Id: Iceb0d3f71751f5aac6218996ace3cf89deda8a29
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/69521
Commit-Queue: Austin Eng <enga@chromium.org >
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
2021-12-02 18:12:57 +00:00
Brandon Jones
f71784fc2b
Transform texture_externals used in a user-defined function
...
Adds functionality and tests for performing the multiplanar external
texture transform on texture_external parameters in user-defined
functions.
Bug: dawn:1082
Change-Id: I15f23e639a6cd24ed3428055420908f05b69c0c6
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/70840
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
2021-12-02 15:21:31 +00:00
Dawn Autoroller
56ff53088b
Roll Tint from 62394b2492 to abf4f17b8e (1 revision)
...
https://dawn.googlesource.com/tint.git/+log/62394b2492bf..abf4f17b8e62
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC kainino@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: kainino@google.com
Change-Id: I0148a16ddf04821c0c9834314cfbdc53298ac797
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71581
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-02 14:15:39 +00:00
Ben Clayton
abf4f17b8e
utils: Add copy constructor to EnumSet
...
Some versions of clang warn as error without this:
error: definition of implicit copy constructor for 'EnumSet<tint::ast::PipelineStage>' is deprecated because it has a user-declared copy assignment operator [-Werror,-Wdeprecated-copy]
Change-Id: I02cee0b1f7b70d74f29da0067e888b50acf27ee1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/71600
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Corentin Wallez <cwallez@chromium.org >
2021-12-02 13:00:32 +00:00
Dawn Autoroller
45e3bdb7ea
Roll ANGLE from 8f6f5a4bb28d to 29babe0fdc44 (5 revisions)
...
8f6f5a4bb2..29babe0fdc
2021-12-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from d2d61620103d to d666676e2702 (101 revisions)
2021-12-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 5bf1cc589ddf to d2d61620103d (907 revisions)
2021-12-02 shrekshao@google.com Decouple gl_BaseVertex/gl_BaseInstance uniforms
2021-12-01 lfy@google.com Vulkan: Don't retain in buffer/imageRead unnecessarily
2021-12-01 jonahr@google.com Rework compressed texture pixel unpack state handling.
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 kainino@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: kainino@google.com
Change-Id: Icdc43b572cc9a7bd5f241e15fb1d41b5c3f12376
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/71580
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com >
2021-12-02 09:31:11 +00:00