10152 Commits

Author SHA1 Message Date
Ben Clayton
17941e1562 Disable BindGroupTests for D3D12 + tint
Bug: tint:681
Change-Id: I5cca1889d2ba26503530ead922278172e5e98ccf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46368
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 18:54:07 +00:00
Stephen White
41974270c9 Roll third_party/angle/ 0c9f22d3a..9a025fd44 (23 commits)
0c9f22d3a7..9a025fd448

$ git log 0c9f22d3a..9a025fd44 --date=short --no-merges --format='%ad %ae %s'
2021-03-13 jmadill Capture/Replay: add frontend feature to force capture limits
2021-03-15 gert.wollny libAngle: Add Json context serializer library
2021-03-17 lubosz.sarnecki context: Remove endl, since INFO already adds them.
2021-03-05 lubosz.sarnecki capture_replay_expectations: Don't skip passing.
2021-03-26 angle-autoroll Roll SwiftShader from 8969f861fc24 to fb53aa2bb7da (2 revisions)
2021-03-09 lubosz.sarnecki capture_gles_3_2: Set read buffer for glGetPointerv.
2021-03-26 angle-autoroll Roll vulkan-deps from 3f4383f1d450 to 7079d8df17da (2 revisions)
2021-03-26 angle-autoroll Roll Chromium from 7a30f2f0e630 to e0abc3035c46 (431 revisions)
2021-03-04 lubosz.sarnecki capture_gles_1_0: Implement capture functions.
2021-03-25 ynovikov Remove old Win x86 bots from CQ
2021-02-26 syoussefi Vulkan: Call glslang at compile time
2021-03-25 jmadill Trace Tests: Work around autoninja.bat change on Win.
2021-03-24 m.maiya Vulkan: Enable glBlitFramebuffer for EXT_sRGB_write_control
2021-03-25 angle-autoroll Roll vulkan-deps from 91a2a0b15f23 to 3f4383f1d450 (26 revisions)
2021-03-25 angle-autoroll Roll SwiftShader from a98fb3f8380a to 8969f861fc24 (2 revisions)
2021-03-25 angle-autoroll Roll Chromium from bda1e3894abc to 7a30f2f0e630 (468 revisions)
2021-03-24 ynovikov Leave Android devices in portrait orientation after test
2021-03-22 cclao Vulkan: Add A few other *-None-04584 VVL error to skip list
2021-03-20 senorblanco SSBO handling rewrite.
2021-03-22 doughorn Fix potential mod by 0 with invalid formats.
2021-03-24 jmadill Disable Framebuffer Fetch test.
2021-03-24 m.maiya Add missing qualifier type handling in translator
2021-03-24 cnorthrop Scripts: Ignore robin_hood headers in VVL

Created with:
  roll-dep third_party/angle

Change-Id: Ia3ac661d66abe7530087401c966a85b45c3356e9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46300
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2021-03-30 17:59:37 +00:00
Ben Clayton
25d3f252a6 ComputeSharedMemoryTests: Add missing access qualifier
https://gpuweb.github.io/gpuweb/wgsl.html#variables:

> "Variables in the storage storage class and variables with a storage texture type must have an access attribute applied to the store type."

Bug: tint:692
Change-Id: I61774bb6bda9a7d31e3a85c24fcdb6e2fc25e7b1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46378
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:37:07 +00:00
Ben Clayton
5da990b0a4 Disable SampledAndWriteonlyStorageTexturePingPong for D3D12 + tint
Bug: tint:690
Change-Id: If3bdba33f843885c7e056b68b361d890a7a58c04
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46376
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:29:37 +00:00
Ben Clayton
eef7a6a58c Disable tests for D3D12 + tint that fail due 'undeclared identifier'
Bug: tint:688
Change-Id: Ic1f0fbd6da112557711595eae38b5d034bbe594b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46374
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:23:27 +00:00
Ben Clayton
682d764e85 Disable TextureFormatTest for D3D12 + tint
Bug: tint:689
Change-Id: Ib006a2e726078426cd00479c35d47eecf9b3d601
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46375
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:21:07 +00:00
Ben Clayton
1894d5d83a Disable SizedArrayOfStruct tests for D3D12 + tint
Bug: tint:683
Change-Id: I55c513108cb5c8e14bd72bb8dd3177afff353623
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46370
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:08:07 +00:00
Ben Clayton
1bcfdce243 Disable MultipleWriteThenMultipleReadTests for D3D12 + tint
Bug: tint:686
Change-Id: Iaca48aa7fb4cddbc008d66a248d01a6e4d36f5ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46372
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:05:17 +00:00
Ben Clayton
9421afc46f Disable VertexFormatTest for D3D12 + tint
Bug: tint:687
Change-Id: Ib839f629ea4095c007c1a8b3f9ad490c1e9e4910
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46373
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 16:00:57 +00:00
Ben Clayton
51d81c1d56 Disable DepthStencilSamplingTest for D3D12 + tint
Bug: tint:684
Change-Id: Iff76442349da1a399c7460a1a6ce047229b0ab88
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46371
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 15:44:07 +00:00
Ben Clayton
ed73e6f51e Disable TimestampComputeShader test on D3D12 + WARP + Validation
Bug: dawn:741
Change-Id: I5ee730e4f7b0e9041373bfe9ecc1be3b2535a775
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46367
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 15:23:37 +00:00
Ben Clayton
9ef74c56fd Disable EncodeUBOOverflowMultipleSubmit test on D3D12 + WARP
Bug: dawn:742
Change-Id: I11fc4c49c4040d694703ed43ebd8b1e2fe62bf17
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46366
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 15:22:17 +00:00
Ben Clayton
74879450c5 Disable SlantedPlaneMipmap test on D3D12 + WARP
Bug: dawn:740
Change-Id: I127c7698cf9103ef85dafe44c5dc5781ccea031d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46365
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 15:21:37 +00:00
Ben Clayton
d48c5ed77c Disable SwitchedViewHeapResidency test on D3D12 + WARP + Validation
Bug: dawn:739
Change-Id: I56f17f75bd2e5a12d90c6875817d980cb98d3e01
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46364
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 15:19:37 +00:00
Ben Clayton
2922d8d603 Skip ClearTwiceInD3D12ReadbackInD3D11 for WARP + validation
Bug: dawn:735
Change-Id: I26d06528aebb4f2c2a391d65ab8a16ef1e6e01f7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46360
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 13:23:27 +00:00
Ben Clayton
fed33fa18a Disable ArbitraryBindingNumbers on D3D12 + WARP
Bug: dawn:736
Change-Id: I3402dee42c71a88160667ea8ea00b43734441741
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46361
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 13:15:27 +00:00
Ben Clayton
47a8cf3410 Disable MultisampledRenderingTest tests on D3D12 + WARP
Bug: dawn:738
Change-Id: I208d9851f14c25f16a97382953150eba7f4667b9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46363
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 13:13:17 +00:00
Aleksi Sapon
7f8c91cdde Fix crash from async callback calling Queue::Submit
An async callback which calls Queue::Submit will cause
reentrance in QueueBase::Tick and CreatePipelineAsyncTracker::Tick,
which invalidates the task queue being used by the original call,
and leads to a crash from an invalid pointer.

The Tick functions should remove the tasks from the queues before
the callbacks are called, so invalidation doesn't cause a crash.

Bug: dawn:729

Change-Id: I0d952d51040a3d1a475767400de3333a8b9b0821
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45900
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-03-30 13:06:17 +00:00
Ben Clayton
98028718e1 Disable DepthStencilStateTest tests on D3D12 + WARP
Bug: dawn:737
Change-Id: I55d22ad54fe3983bbae67572a428d01a64e634e3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46362
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-30 12:55:17 +00:00
Ben Clayton
955146e9ac Skip ColorStateTest.* for D3D12 and WARP
These don't pass.

Bug: dawn:489
Change-Id: Ic9a5f34bc3325326d2c6217e82d75633ff0a7534
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46344
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-03-30 12:05:47 +00:00
Ben Clayton
8d57426a80 Skip ClearInD3D12ReadbackInD3D11 for WARP + validation
Bug: dawn:735
Change-Id: I5731e198f6888bf6ad7d244a54053b917a277e4a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46343
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-03-30 11:53:07 +00:00
Dawn Autoroller
bc2fbe6a3c Roll Tint from 01ac3dd9176d to 02571d15e882 (6 revisions)
https://dawn.googlesource.com/tint.git/+log/01ac3dd9176d..02571d15e882

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 enga@google.com on the revert to ensure that a human
is aware of the problem.

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/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: Ib23b4e78b532bffb446a0b96c6da5b0ad848e9a8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46322
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-03-30 10:35:37 +00:00
Corentin Wallez
1bc1ed4bc9 Propagate errors from Tick in backend::Queue::SubmitImpl
Otherwise errors in Tick could cause the device to be lost and further
processing in Queue::SubmitImpl to fail in interesting ways.

Bug: dawn:723
Bug: chromium:1191777
Change-Id: I586c6b0f97c89938b9e7deeb6f31231ec19e826c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46002
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-03-30 10:21:36 +00:00
Ben Clayton
02571d15e8 writer/hlsl: Initialize output local variable
Failing to initialize this can lead to uninitialized variable errors in the FXC compiler.

Change-Id: Ic4e7ee0aab889241923382f83058e3a9a567be5b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46265
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-03-29 21:27:05 +00:00
Ben Clayton
92b5be0047 writer/hlsl: Emit binding group as spaceN
When combined with the new transform::BindingRemapper, Dawn can now correctly emit resource bindings.

Change-Id: I3e7fd7b2fc5368c5da112ec8835f5c70d45ce6c8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46263
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-29 21:26:35 +00:00
Ben Clayton
e0c1221b37 Add transform::BindingRemapper
A transform to replace binding points and access control flags.

Required by Dawn for the HLSL and MSL backends

Fixed: tint:104
Fixed: tint:621
Fixed: tint:671
Change-Id: Ic6ccc4a8a7724697cc4af0fad25394a1973eeb22
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46262
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2021-03-29 21:25:45 +00:00
Ben Clayton
a864f24c6f Add ast::Variable::BindingPoint
Use this to simplify a bunch of code in semantic::Function.

Change-Id: Ia3f8a270ec576660eab00bcfa4df9a96138bd31e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46261
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-03-29 21:21:35 +00:00
Ben Clayton
af8a8ac3d6 transform: Add Data as an input
Like 42264, this is an attempt to keep transforms immutable, and to keep mutable I/O information in Data objects.

Bug: tint:389
Change-Id: Ie417872d3e97f3db3904245a30aa74fdcce76610
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46260
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-03-29 21:03:59 +00:00
Ben Clayton
de1e3c02e3 Fix linter errors
Change-Id: I7b8b5c00503564d220e50eb245e812b4a5a109cd
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46267
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2021-03-29 20:16:36 +00:00
Dawn Autoroller
d7d98509da Roll Tint from 9ef17472e871 to 01ac3dd9176d (1 revision)
https://dawn.googlesource.com/tint.git/+log/9ef17472e871..01ac3dd9176d

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 enga@google.com on the revert to ensure that a human
is aware of the problem.

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/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I1f3bc9b183a7dccf30a3702d0a8ba27fccd4f9aa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46280
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-03-29 16:00:56 +00:00
Corentin Wallez
e91975c79e dawn_native: Use an internal GetQueue that doesn't add a ref
Previously various places in dawn_native were using Device::GetQueue to
get the queue for some operations, and were inadvertently adding a
reference to the queue. Fix this by adding a getter that doesn't add a
ref.

Bug: dawn:723
Bug: chromium:1185070
Change-Id: Iba127dbd631305762f4cc6c37816407056c52cff
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46001
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-03-29 15:40:55 +00:00
Ben Clayton
01ac3dd917 Add utils/hash.h
Contains hash combining functions borrowed and tweaked from Dawn

Change-Id: I0bc9478bcdba0b923d0b01825c275290ffa29976
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46268
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-03-29 15:13:55 +00:00
Corentin Wallez
2ce4b905b2 dawn_native: Prefix all API methods with API
This means that calling wgpu::Object::DoStuff will translate to a call
to dawn_native::ObjectBase::APIDoStuff. This will clarify the
difference between reentrant calls and internal calls in dawn_native.
Avoiding issues in the future.

This CL only changes the code generator to prefix with "API", performs
renames needed to make the code compile, and adds TODOs for things that
should be fixed in follow-up CLs.

Bug: dawn:723

Change-Id: Ie24471fa093adc4179d33d13323429847d076ecb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45921
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-03-29 14:02:05 +00:00
Dawn Autoroller
b745df8537 Roll Tint from cea744d55887 to 9ef17472e871 (5 revisions)
https://dawn.googlesource.com/tint.git/+log/cea744d55887..9ef17472e871

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 bclayton@google.com on the revert to ensure that a human
is aware of the problem.

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/master/autoroll/README.md

Bug: None
Tbr: bclayton@google.com
Change-Id: I3ed41def656d05e53b77e0eb7cd3157a37a03c96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46200
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-03-26 21:04:45 +00:00
Antonio Maiorano
9ef17472e8 Add semantic::Variable::Type() and use it instead of ast::Variable::type()
In anticipation of adding support for type inference, no longer use
ast::Variable::type() everywhere, as it will eventually return nullptr
for type-inferred variables. Instead, the Resolver now stores the final
resolved type into the semantic::Variable, and nearly all code now makes
use of that.

ast::Variable::type() has been renamed to ast::Variable::declared_type()
to help make its usage clear, and to distinguish it from
semantic::Variable::Type().

Fixed tests that failed after this change because variables were missing
VariableDeclStatements, so there was no path to the variables during
resolving, and thus no semantic info generated for them.

Bug: tint:672
Change-Id: I0125e2f555839a4892248dc6739a72e9c7f51b1e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46100
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2021-03-26 12:47:58 +00:00
David Neto
d7f23f5c75 spirv-reader: Fix mixed-signedness binary ops
Fixed: tint:666
Change-Id: I77331081fc5acc128be81e7b85a253bf6ebab608
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46140
Auto-Submit: David Neto <dneto@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-03-26 12:13:18 +00:00
Corentin Wallez
1257152485 Use RefCounted for DeviceBase
DeviceBase implemented its own Reference / Release methods for
historical reasons. Replace them with RefCounted's version that are
similar, just more thread safe.

Bug: dawn:723
Change-Id: Ib26f3e231eb12fe09612c8b5639576e2f26a3cfd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46000
Commit-Queue: Stephen White <senorblanco@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-03-25 23:50:24 +00:00
James Price
c63a64b795 [msl-writer] Fix struct constructor emission
Zero value struct expressions may still be broken (tint:477).

Change-Id: I5cf2f13ed891a50e4b8f55ce4b80d2768aa358d9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/46101
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-03-25 21:32:27 +00:00
Bryan Bernhart
1a232448d2 D3D12: Remove WrapSharedHandle
Removes WrapSharedHandle in favor of using
ExternalImageDXGI.

BUG=dawn:625

Change-Id: Ibd469600959aea344e7a59557d986fc673a79727
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46020
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
2021-03-25 21:31:34 +00:00
James Price
a696b027b3 [spirv-writer] Use const for function parameters
The backend was wrongly generating OpLoad instructions for function parameter
accesses since it thought they were pointers.

Run SPIR-V validation for the entry point IO tests.

Bug: tint:509
Change-Id: Ic816a22973fb87c7ede26bad8fb595764a333250
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/45941
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: James Price <jrprice@google.com>
2021-03-25 20:49:37 +00:00
Dawn Autoroller
d9b56a02c5 Roll Tint from 5c9906e3079f to cea744d55887 (2 revisions)
https://dawn.googlesource.com/tint.git/+log/5c9906e3079f..cea744d55887

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 bclayton@google.com on the revert to ensure that a human
is aware of the problem.

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/master/autoroll/README.md

Bug: None
Tbr: bclayton@google.com
Change-Id: I9af8664e04190557b00a530694f4766c25281fae
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/46080
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-03-25 20:25:24 +00:00
James Price
ea855a9144 [spirv-writer] Handle non-pointer struct member accessors
These map to OpCompositeExtract instructions.

Fixed: tint:662
Change-Id: Ibd865bdb16326de7932157cbdfe543394415b3ff
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/45940
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: James Price <jrprice@google.com>
2021-03-25 20:16:48 +00:00
Brandon Jones
37ad44eef2 Allow Dawn to surface Tint internal compiler errors as uncaptured validation errors
Raises any ICE errors reported by Tint during shader validation as uncaptured
validation errors. This allows them to show up in Chrome's dev tools console, for
example.

BUG: dawn:718
Change-Id: I85741787103e6c1174b7c73be6b9860b988d6130
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45840
Reviewed-by: Ben Clayton <headlessclayton@gmail.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Brandon Jones <bajones@chromium.org>
2021-03-25 15:37:44 +00:00
Antonio Maiorano
cea744d558 Move Switch validation from Validator to Resolver
* Formerly, we reported the same error message if we detected no default
clause or more than one. I made it so that we output a different error
message for each. This makes it more clear, and in the case of more than
one, the error source location points at the second default clause,
rather than at the switch statement.

* Add functions to ProgramBuilder to more easily define switch and case
statements.

* Fix broken tests as a result of this change.

Bug: tint:642
Change-Id: Iab4e610a563165862d9bc190772d32a4dd24ac45
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/45880
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2021-03-25 12:55:27 +00:00
Ryan Harrison
0f5c26d5fd Add checking for ICEs in fuzzers
BUG=tint:668

Change-Id: I6b0bf79873b01140b1e87ea60abeb623b031af23
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/45942
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-03-25 11:40:07 +00:00
Corentin Wallez
6d0438c21e Add documentation for the codegen.
Also does small cleanups in dawn.json

Bug: None
Change-Id: Icbe8c9370496fa63fdd32b43d4f7a0666acf71c4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45920
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-03-24 20:29:42 +00:00
Stephen White
ee820ca7c2 Roll third_party/angle/ d8557cc88..0c9f22d3a (162 commits)
d8557cc88f..0c9f22d3a7

$ git log d8557cc88..0c9f22d3a --date=short --no-merges --format='%ad %ae %s'
2021-03-24 angle-autoroll Roll Chromium from f1617b736428 to bda1e3894abc (469 revisions)
2021-03-18 amy.liu Compression of the data from vkGetPipelineCacheData.
2021-03-23 xiaoxuan.liu Vulkan: Fix gl_SamplePosition XY-flip and rotation.
2021-03-23 reveman [Fuchsia] Add ifndefs to vulkan_fuchsia_ext.h
2021-03-09 syoussefi Vulkan: Use VK_EXT_multisampled_render_to_single_sampled
2021-03-22 ianelliott Update ANGLEWrangling.md with Hotlist-Wrangler
2021-03-22 rafael.cintron Enable D3D11 debug names in ANGLE release builds
2021-03-22 penghuang Disable timestamp queries for Mali-G31 and older GPUs
2021-03-23 jmadill Revert "Save/Load missing members"
2021-03-22 jmadill Vulkan: Rename Uniforms/XFB descriptor desc.
2021-03-23 angle-autoroll Roll Chromium from 3eced2421f5a to f1617b736428 (473 revisions)
2021-03-19 cnorthrop Tests: Add Real Cricket 20 trace
2021-03-22 ianelliott Fix copyright dates of new test files per Shabi
2021-03-08 cclao Vulkan: Add test for filament gltf usage case
2021-03-17 timvp Save/Load missing members
2021-03-19 cnorthrop Tests: Add android log library to traces
2021-03-17 timvp Reorder ShaderVariable functions and members
2021-03-19 m.maiya Handle inactive structure type varyings correctly
2021-03-19 m.maiya Vulkan: Handle compilation error involving gl_InvocationID
2021-03-19 cclao Vulkan: Rename onImageHelperRelease to finalizeImageLayout
2021-03-18 jmadill Vulkan: More cleanups to perf counters.
2021-03-21 cnorthrop Tests: Add Avakin Life - 3D Virtual World trace
2021-03-18 cheryl.wei Skip ResizeWindow test on Linux.
2021-03-20 m.maiya Vulkan: Don't acquire new BufferHelper for external buffers
2021-03-22 angle-autoroll Roll Chromium from c33e21cce932 to 3eced2421f5a (477 revisions)
2021-03-19 ianelliott Add multi-thread/context test for compute shaders
2021-03-19 capn Disable EGL_EXT_buffer_age for SwiftShader Vulkan
2021-03-17 cclao Vulkan: Add VUID-vkCmdDraw-None-04584 validation error to ignore list
2021-03-08 cclao Vulkan: Track images used for both attachment and sampler
2021-03-18 m.maiya Add isYUV to angle::Format
2021-03-08 cclao Vulkan: Defer color image layout changes at endRenderPass time
2021-03-15 geofflang D3D: Mark images dirty after recovering from storage
2021-03-19 angle-autoroll Roll vulkan-deps from 6ea3512e6349 to 91a2a0b15f23 (6 revisions)
2021-03-19 angle-autoroll Roll Chromium from e7ef5f7d0368 to c33e21cce932 (451 revisions)
2021-03-17 cnorthrop Tests: Add Ragnarok M: Eternal Love trace
2021-03-15 jiajia.qin Fix the assert error and inbalence parens for SSBO
2021-03-18 jmadill Vulkan: Use packed enum map for descriptor set index.
2021-03-18 jmadill Vulkan: Clean up shader buffer DS allocation.
2021-03-08 cclao Vulkan: Move CommandBufferHelper::reset() closer to constructor
2021-03-08 cclao Vulkan: Test render and sample the same texture but with different LOD
2021-03-17 gert.wollny scripts: Ignore "rapidsjon/..." when checking includes
2021-03-18 angle-autoroll Roll Chromium from 60fea25f23e6 to e7ef5f7d0368 (472 revisions)
2021-03-18 angle-autoroll Roll vulkan-deps from 105af117f053 to 6ea3512e6349 (13 revisions)
2021-03-17 jdarpinian Fix immutable texture base level validation
2021-03-12 cnorthrop Tests: Add June's Journey trace
2021-03-12 jmadill Use bitset masks for active shader buffers.
2021-03-08 m.maiya Reland "Vulkan: Support EXT_sRGB_write_control"
2021-03-16 syoussefi Vulkan: Fix missing dirty bits for compute
2021-03-17 angle-autoroll Roll SwiftShader from 69b79eec6533 to a98fb3f8380a (2 revisions)
2021-03-03 xiaoxuan.liu Reland "Add support for Linux GPU info with Vulkan backend"
(...)
2021-03-05 ianelliott Work-around eglSwapBuffersWithDamageKHR() bug
2021-03-08 jmadill Allow graceful no-error failure in CastStateValues.
2021-03-04 penghuang Reland "Fix bindFramebuffer problem with GLES2 devices"
2021-03-03 penghuang Reland "Fix two issues with GLES2 devices"
2021-03-09 penghuang Revert "Vulkan: Support EXT_sRGB_write_control"
2021-03-09 penghuang Revert "Fix bindFramebuffer problem with GLES2 devices"
2021-03-09 penghuang Revert "Fix two issues with GLES2 devices"
2021-03-09 angle-autoroll Roll SwiftShader from de7d5775ab25 to 023914a27b63 (2 revisions)
2021-03-09 angle-autoroll Roll vulkan-deps from 6691fcec0bce to 32692e5de307 (12 revisions)
2021-03-04 penghuang Disable worker contexts on Android emulator
2021-03-08 ynovikov Further suppress tests failing on Ozone.
2021-03-04 penghuang Fix bindFramebuffer problem with GLES2 devices
2021-03-06 lexa.knyazev Metal: Enable iOS pixel formats on macOS 11
2021-03-08 m.maiya Vulkan: Support EXT_sRGB_write_control
2021-03-04 penghuang Fix two GL_OES_texture_half_float related problems with GLES2
2021-03-05 ynovikov Add Win x86 chromium.angle bots to CQ
2021-03-03 penghuang Fix two issues with GLES2 devices
2021-03-07 lexa.knyazev Fix PVRTC1 frontend validation
2021-03-02 m.maiya Handle nullptr in GetQueryObjectParameter()
2021-03-08 angle-autoroll Roll SwiftShader from 6846389f25ca to de7d5775ab25 (1 revision)
2020-10-13 lexa.knyazev Metal: Implement OES_draw_buffers_indexed
2021-03-06 angle-autoroll Roll VK-GL-CTS from a9c07acc33bc to c4e6dbe68e04 (15 revisions)
2021-03-05 ynovikov Skip tests failing on Ozone.
2021-03-06 angle-autoroll Roll VK-GL-CTS from 9be79728eafb to a9c07acc33bc (6 revisions)
2021-03-05 angle-autoroll Roll Chromium from e3e89758c942 to 76f6150ffdeb (205 revisions)
2021-03-05 angle-autoroll Roll VK-GL-CTS from 9cdde06fb38a to 9be79728eafb (18 revisions)
2021-03-05 ynovikov Skip vulkan_car_parking_multiplayer on Win Intel
2021-03-05 ynovikov Skip CopyTextureVariationsTest failing on Ozone
2021-03-05 Amy.Liu Revert "Compression of the data from vkGetPipelineCacheData."
2021-03-05 lexa.knyazev Fix Apple GPU detection for M1
2021-03-04 lubosz.sarnecki capture_replay_tests: Don't skip tests that pass.
2021-02-27 syoussefi Vulkan: Keep dynamic buffer's free list trimmed
2021-03-05 angle-autoroll Roll vulkan-deps from c0db6ae3d87d to 6691fcec0bce (2 revisions)
2021-03-05 angle-autoroll Roll SwiftShader from 084529f3a9b9 to 6846389f25ca (1 revision)
2021-03-05 angle-autoroll Roll Chromium from 143c12daa39f to e3e89758c942 (782 revisions)
2021-02-27 m.maiya Add FramebufferAttachmentPerfTest
2021-03-04 enga Revert "Add support for Linux GPU info with Vulkan backend"
2021-03-02 m.maiya Vulkan: Unmap buffer when adding to mBufferFreeList
2021-03-01 natsu Vulkan: Enable EGL_ANDROID_recordable for EGL configs on SwiftShader
2021-03-04 jmadill infra/config: Rename console/list views.
2021-02-25 syoussefi Translator: Rename GLSL to SPIR-V in Vulkan and Metal output
2021-03-02 ynovikov Suppress UNINSTANTIATED_PARAMETERIZED_TEST failures on Ozone
2021-03-03 xiaoxuan.liu Add support for Linux GPU info with Vulkan backend
2021-03-02 lexa.knyazev Partially upgrade codegen to Python 3
2021-03-03 ynovikov Replace Win x64 dEQP GPU.FYI bots with chromium.angle bots
2021-03-04 angle-autoroll Roll SwiftShader from 106e01583a3a to 084529f3a9b9 (1 revision)
2021-03-04 angle-autoroll Roll vulkan-deps from 6c3f8d8c39b9 to c0db6ae3d87d (6 revisions)
2021-03-03 syoussefi Vulkan: Fix overlay graph widgets
2021-03-02 syoussefi Vulkan: Fix Overlay for prerotation
2021-03-02 syoussefi Vulkan: Workaround Overlay draw issue on Android

Created with:
  roll-dep third_party/angle

Change-Id: Ifb50462ee7be965e1bac8c377ef021614da56402
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45862
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2021-03-24 19:56:43 +00:00
Dawn Autoroller
ca7166ba8b Roll Tint from 84ef13c84fb3 to 5c9906e3079f (3 revisions)
https://dawn.googlesource.com/tint.git/+log/84ef13c84fb3..5c9906e3079f

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 bclayton@google.com on the revert to ensure that a human
is aware of the problem.

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/master/autoroll/README.md

Bug: None
Tbr: bclayton@google.com
Change-Id: I5cb4bd2003ef9236094884062204fc73e4f38be1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45960
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-03-24 19:48:33 +00:00
Ryan Harrison
9138fe253b Add test to confirm validation rejects invalid WGSL
BUG=dawn:504

Change-Id: If09b12d4df9c7aedcb28b4640557cc3cae6e989d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45700
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-03-24 19:39:33 +00:00
James Price
5c9906e307 [spirv-writer] Handle entry point IO struct types
Recursively hoist struct members out to module-scope variables, and
redeclare the structs without entry point IO decorations. Generate a
function for storing entry point outputs to the corresponding
module-scope variables and replace return statements with calls to
this function.

Fixed: tint:509
Change-Id: I8977f384b3c7425f844e9346dbbde33b750ea920
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/45821
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2021-03-24 17:08:06 +00:00