We shouldn't be calculating array strides with the packed element size.
Bug: tint:180
Bug: tint:649
Bug: tint:898
Change-Id: Ifa23517480435610b20c1597c2fc2c2837f4280a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55257
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Remove special case handling of pointers and values related
to builtins SampleId, VertexIndex, and InstanceIndex.
These map to private variables with store type matching the
type stated in the SPIR-V code. There is no need to generate
special case code for user-written functions accessing those variables.
Therefore:
- Remove SkipReason enums associated with those builtin inputs
- Remove newly unreachable code.
Bug: tint:508
Change-Id: I22ea86d49e14f171a92863d9f02145606ad37683
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55321
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: James Price <jrprice@google.com>
Auto-Submit: David Neto <dneto@google.com>
Varaibles can infer types now, in which case the type_ field is null.
Fixed: chromium:1221120
Change-Id: I0cb2a6a2e8128c56625f48940cf73cf4cadb22ce
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55252
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
https://chromium.googlesource.com/vulkan-deps/+log/3d799e0e9b08..6cbd7212ad42
$ git log 3d799e0e9..6cbd7212a --date=short --no-merges --format='%ad %ae %s'
2021-06-21 chromium-autoroll Roll Vulkan-Headers from 9d10a96f2d57 to 37164a5726f7 (2 revisions)
2021-06-18 chromium-autoroll Roll SPIRV-Tools from bcef913745e3 to 5dd2f76918bb (1 revision)
2021-06-17 chromium-autoroll Roll Vulkan-ValidationLayers from d1071c19a85c to 16db45029320 (4 revisions)
2021-06-17 chromium-autoroll Roll glslang from e74b35f3f5f8 to b38100f6bc00 (1 revision)
2021-06-17 chromium-autoroll Roll glslang from b9d06bdb0108 to e74b35f3f5f8 (1 revision)
2021-06-17 chromium-autoroll Roll Vulkan-Tools from 1c9e13dea32d to a680671d95bf (2 revisions)
2021-06-17 chromium-autoroll Roll glslang from 71612a7e5d6a to b9d06bdb0108 (1 revision)
2021-06-17 chromium-autoroll Roll Vulkan-ValidationLayers from ae3d0c321731 to d1071c19a85c (1 revision)
2021-06-17 chromium-autoroll Roll Vulkan-Tools from ec76459d6fdf to 1c9e13dea32d (1 revision)
2021-06-17 chromium-autoroll Roll SPIRV-Tools from 4d22f58a812e to bcef913745e3 (1 revision)
2021-06-16 chromium-autoroll Roll Vulkan-ValidationLayers from adb3eb0e78e3 to ae3d0c321731 (1 revision)
2021-06-16 chromium-autoroll Roll glslang from c830b26b5f7a to 71612a7e5d6a (1 revision)
2021-06-16 chromium-autoroll Roll glslang from a23e1436367f to c830b26b5f7a (1 revision)
2021-06-16 chromium-autoroll Roll Vulkan-Tools from 02897e9cb615 to ec76459d6fdf (1 revision)
2021-06-16 chromium-autoroll Roll Vulkan-Tools from f1f5bdbd1b60 to 02897e9cb615 (1 revision)
2021-06-15 chromium-autoroll Roll Vulkan-Tools from 7501ad708eaf to f1f5bdbd1b60 (1 revision)
2021-06-15 chromium-autoroll Roll glslang from b848fd6a9452 to a23e1436367f (1 revision)
2021-06-15 chromium-autoroll Roll Vulkan-ValidationLayers from e82c237574e0 to adb3eb0e78e3 (1 revision)
2021-06-15 chromium-autoroll Roll Vulkan-ValidationLayers from dafb955601bb to e82c237574e0 (2 revisions)
2021-06-15 chromium-autoroll Roll SPIRV-Tools from ecdd9a3e6bd3 to 4d22f58a812e (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-ValidationLayers from 7397d2636a3d to dafb955601bb (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-ValidationLayers from d867d21eb247 to 7397d2636a3d (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-Tools from 0143cbebff88 to 7501ad708eaf (1 revision)
2021-06-14 chromium-autoroll Roll glslang from fe1515867665 to b848fd6a9452 (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-Tools from ac9393317a5c to 0143cbebff88 (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-Tools from 53231a96c0a6 to ac9393317a5c (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-ValidationLayers from b82d4bc69296 to d867d21eb247 (1 revision)
2021-06-14 chromium-autoroll Roll Vulkan-Headers from 07c4a37bcf41 to 9d10a96f2d57 (1 revision)
2021-06-11 chromium-autoroll Roll Vulkan-Tools from bbdf584b4f62 to 53231a96c0a6 (3 revisions)
2021-06-11 chromium-autoroll Roll Vulkan-Tools from 1021540dc2d2 to bbdf584b4f62 (1 revision)
2021-06-10 chromium-autoroll Roll SPIRV-Tools from bbc660edabf9 to ecdd9a3e6bd3 (2 revisions)
2021-06-09 chromium-autoroll Roll SPIRV-Tools from 9dbca316aac1 to bbc660edabf9 (1 revision)
2021-06-09 chromium-autoroll Roll glslang from 3d935ea2243b to fe1515867665 (1 revision)
2021-06-09 chromium-autoroll Roll SPIRV-Tools from c1a75bfabf6e to 9dbca316aac1 (1 revision)
2021-06-09 chromium-autoroll Roll SPIRV-Tools from d07505c761f5 to c1a75bfabf6e (1 revision)
2021-06-08 chromium-autoroll Roll Vulkan-ValidationLayers from cf7757488619 to b82d4bc69296 (4 revisions)
2021-06-08 chromium-autoroll Roll glslang from cb2c7fd674b9 to 3d935ea2243b (1 revision)
2021-06-08 chromium-autoroll Roll SPIRV-Tools from fb02131cb4ac to d07505c761f5 (1 revision)
2021-06-08 chromium-autoroll Roll Vulkan-ValidationLayers from 24f70cac5d64 to cf7757488619 (1 revision)
2021-06-08 chromium-autoroll Roll Vulkan-ValidationLayers from 55a3fc242217 to 24f70cac5d64 (1 revision)
2021-06-08 chromium-autoroll Roll Vulkan-ValidationLayers from 7cc35d372606 to 55a3fc242217 (2 revisions)
2021-06-08 chromium-autoroll Roll Vulkan-ValidationLayers from 8ce298d4d287 to 7cc35d372606 (1 revision)
2021-06-08 chromium-autoroll Roll SPIRV-Tools from 87a28679762f to fb02131cb4ac (1 revision)
2021-06-07 chromium-autoroll Roll Vulkan-ValidationLayers from 159b3cc24003 to 8ce298d4d287 (1 revision)
2021-06-07 chromium-autoroll Roll Vulkan-ValidationLayers from 46de0cdb7445 to 159b3cc24003 (12 revisions)
2021-06-07 chromium-autoroll Roll Vulkan-Tools from a8e96342e57d to 1021540dc2d2 (1 revision)
2021-06-07 chromium-autoroll Roll glslang from 1fa21491bc20 to cb2c7fd674b9 (1 revision)
2021-06-07 chromium-autoroll Roll Vulkan-Tools from 3ae088978f21 to a8e96342e57d (1 revision)
2021-06-07 chromium-autoroll Roll Vulkan-ValidationLayers from 5573a8ccfc9d to 46de0cdb7445 (1 revision)
2021-06-07 chromium-autoroll Roll SPIRV-Tools from c05f74415425 to 87a28679762f (1 revision)
(...)
2021-06-01 chromium-autoroll Roll Vulkan-ValidationLayers from 5d97074c3a01 to faea0bb06837 (2 revisions)
2021-06-01 chromium-autoroll Roll Vulkan-ValidationLayers from 5919c92a5bf2 to 5d97074c3a01 (1 revision)
2021-06-01 chromium-autoroll Roll Vulkan-ValidationLayers from 1dfbd1790542 to 5919c92a5bf2 (1 revision)
2021-06-01 chromium-autoroll Roll SPIRV-Tools from 0861a8fa21bd to 8b3dc6bbed46 (1 revision)
2021-06-01 chromium-autoroll Roll SPIRV-Tools from 9646c733e91d to 0861a8fa21bd (1 revision)
2021-06-01 chromium-autoroll Roll SPIRV-Tools from ec1bc3e2e567 to 9646c733e91d (1 revision)
2021-05-31 chromium-autoroll Roll Vulkan-ValidationLayers from 94787b19f5f1 to 1dfbd1790542 (1 revision)
2021-05-31 chromium-autoroll Roll Vulkan-ValidationLayers from 7176ec2ec8b6 to 94787b19f5f1 (2 revisions)
2021-05-31 chromium-autoroll Roll Vulkan-Tools from daa3490ea48a to 6149e30699b3 (1 revision)
2021-05-31 chromium-autoroll Roll Vulkan-ValidationLayers from 4ce9838c233c to 7176ec2ec8b6 (1 revision)
2021-05-28 chromium-autoroll Roll Vulkan-ValidationLayers from 299187b140d1 to 4ce9838c233c (1 revision)
2021-05-28 chromium-autoroll Roll Vulkan-Tools from 4e4619ae690a to daa3490ea48a (1 revision)
2021-05-28 chromium-autoroll Roll Vulkan-ValidationLayers from 93883725f2d9 to 299187b140d1 (1 revision)
2021-05-28 chromium-autoroll Roll Vulkan-ValidationLayers from 3a5976ccf876 to 93883725f2d9 (2 revisions)
2021-05-28 chromium-autoroll Roll Vulkan-ValidationLayers from 8a22bcf6bf74 to 3a5976ccf876 (2 revisions)
2021-05-27 chromium-autoroll Roll glslang from 6fe560f74f47 to 6bdcb4be344d (1 revision)
2021-05-27 chromium-autoroll Roll SPIRV-Cross from ff61890722a9 to a6ce49ca2420 (1 revision)
2021-05-27 chromium-autoroll Roll SPIRV-Tools from 94f570d7aa88 to ec1bc3e2e567 (1 revision)
2021-05-26 chromium-autoroll Roll SPIRV-Tools from 00ce2bb474e8 to 94f570d7aa88 (1 revision)
2021-05-26 chromium-autoroll Roll Vulkan-ValidationLayers from 67b22bff6c6f to 8a22bcf6bf74 (3 revisions)
2021-05-26 chromium-autoroll Roll Vulkan-ValidationLayers from 527470176179 to 67b22bff6c6f (1 revision)
2021-05-25 chromium-autoroll Roll SPIRV-Tools from e2ac64bdf003 to 00ce2bb474e8 (1 revision)
2021-05-25 chromium-autoroll Roll SPIRV-Tools from 91931ffcd22a to e2ac64bdf003 (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-ValidationLayers from b0d5e59282a3 to 527470176179 (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-Tools from 72c2d5f0b0e5 to 4e4619ae690a (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-Loader from a132dee142c0 to 3bdb32d29f2d (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-ValidationLayers from c7cd7dd80597 to b0d5e59282a3 (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-ValidationLayers from 00cc43d56498 to c7cd7dd80597 (1 revision)
2021-05-24 chromium-autoroll Roll SPIRV-Tools from 0afe1f2b3fa2 to 91931ffcd22a (1 revision)
2021-05-24 chromium-autoroll Roll Vulkan-Headers from 9af411e83fb0 to 7fe877c90abf (1 revision)
2021-05-22 chromium-autoroll Roll SPIRV-Tools from f0d110e3058b to 0afe1f2b3fa2 (1 revision)
2021-05-21 chromium-autoroll Roll Vulkan-ValidationLayers from 9326420ac7ef to 00cc43d56498 (1 revision)
2021-05-21 chromium-autoroll Roll SPIRV-Cross from faec1a8643d2 to ff61890722a9 (1 revision)
2021-05-21 chromium-autoroll Roll Vulkan-ValidationLayers from bcc40ac73917 to 9326420ac7ef (1 revision)
2021-05-21 chromium-autoroll Roll SPIRV-Cross from 9ea0e8b859da to faec1a8643d2 (1 revision)
2021-05-21 chromium-autoroll Roll SPIRV-Cross from a6c951485604 to 9ea0e8b859da (1 revision)
2021-05-21 chromium-autoroll Roll SPIRV-Cross from 0214990e7caa to a6c951485604 (1 revision)
2021-05-21 chromium-autoroll Roll SPIRV-Cross from 418542eaefdb to 0214990e7caa (1 revision)
2021-05-21 chromium-autoroll Roll Vulkan-ValidationLayers from c8b831c8282e to bcc40ac73917 (1 revision)
2021-05-20 chromium-autoroll Roll glslang from e71278cc927f to 6fe560f74f47 (1 revision)
2021-05-20 chromium-autoroll Roll Vulkan-ValidationLayers from cf0476d422aa to c8b831c8282e (24 revisions)
2021-05-20 chromium-autoroll Roll Vulkan-ValidationLayers from 9c5f59d1777c to cf0476d422aa (2 revisions)
2021-05-19 chromium-autoroll Roll Vulkan-ValidationLayers from 27cda2ec97d6 to 9c5f59d1777c (8 revisions)
2021-05-19 chromium-autoroll Roll Vulkan-Tools from f89f72e10562 to 72c2d5f0b0e5 (4 revisions)
2021-05-19 chromium-autoroll Roll Vulkan-ValidationLayers from 0bbc61128c85 to 27cda2ec97d6 (1 revision)
2021-05-19 chromium-autoroll Roll Vulkan-ValidationLayers from 65bde5b6634a to 0bbc61128c85 (1 revision)
2021-05-19 chromium-autoroll Roll Vulkan-ValidationLayers from cfd1a0935879 to 65bde5b6634a (5 revisions)
2021-05-19 chromium-autoroll Roll Vulkan-ValidationLayers from db3f43f84989 to cfd1a0935879 (1 revision)
2021-05-18 chromium-autoroll Roll Vulkan-ValidationLayers from 1d86b3235b42 to db3f43f84989 (2 revisions)
2021-05-18 chromium-autoroll Roll glslang from 202c8abae0a3 to e71278cc927f (1 revision)
TBR=enga@chromium.org
Created with:
roll-dep third_party/vulkan-deps
Change-Id: I5a00ff7e4ef3e6237d8a0ed92168c6506656de26
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55255
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This CL adds the support ofwgpu::CopyTextureForBrowserOptions::alphaOps
for CopyTextureForBrowser(), which allows the user to specify the alpha
operations (DontChange, Premultiply, Unpremultiply) when calling
CopyTextureForBrowser().
BUG=chromium:1217153
Change-Id: Idb5dd4482b33f2ada9aafc24380afeb48f2e26bc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/54800
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
Inline the `continuing` block in the places where `continue` is called.
Simplifies the emission, and fixes emission of `let` statements in the loop.
This fix matches the same approach in writer/hlsl.
See: https://dawn-review.googlesource.com/c/tint/+/51784
Fixed: tint:833
Fixed: tint:914
Change-Id: If4d8cde62dfaf8efa24272854ca7ff5edc0a8234
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55341
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
ShaderRobustnessPerf:
SPIRV-Cross apparently generates incorrect code for MSL and OpenGL, when
attempting to initialize workgroup memory. Disable these tests when not
running with use_tint_generator.
D3D12DescriptorHeapTest:
The UBO layout for a mat2x2 was incorrect, but the test relied upon this.
Temporarily disable the test so we can roll the fix.
Bug: dawn:945
Bug: dawn:946
Change-Id: I810249b26a8a0b583796c0ba63b8a703eb9540e4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55248
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Mostly just deleting unneeded code, and a few additional cleanups as a
result.
Bug: tint:697
Change-Id: I31ceea93feb34994f51a1b6d294a35cf0c127447
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55282
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Generate a uniform buffer that will receive the lengths of all storage
buffers, and use this to implement calls to arrayLength(). The
transform is provided with a set of mappings from storage buffer
binding points to the corresponding index into the array of buffer
lengths. The transform reports whether it generated the uniform
buffers or not.
Use this transform from the MSL sanitizer, using the binding number as
the index into the array. This matches the behavior of spirv-cross,
and so works with how Dawn already produces this uniform buffer.
Bug: tint:256
Change-Id: I2682d2d024e8daa30f78270b8cfb6bbb32632133
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54480
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Zero the workgroup memory for all backends.
We can probably disable this for the backends that support workgroup zeroing, but that's an optimization we can perform later.
Fixed: tint:280
Change-Id: I9cad919ba3a15b8cedfe6939317d1f6b95425453
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55244
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Reviewed-by: James Price <jrprice@google.com>
Zero initializes all referenced workgroup storage classed variables used by each entry point.
Bug: tint:280
Fixed: tint:911
Change-Id: I3fca26a10f015f08fedef404720bbe6fd7b343a9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55243
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Reviewed-by: James Price <jrprice@google.com>
Instead of a ConstantBuffer.
HLSL requires that each structure field in a UBO is 16 byte aligned.
WGSL has much looser constraints with its UBO field alignment rules.
Instead generate an array of uint4 vectors, and index into this, much
like we index into [RW]ByteAddressBuffers for SSBOs.
Extend the DecomposeStorageAccess transform to support uniforms too.
This has been renamed to DecomposeMemoryAccess.
Change-Id: I3868ff80af1ab3b3dddfbf5b969724cb87ef0744
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55246
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
If during clone, we register a type, function or global declaration, we could end up with the declaration held twice by the AST Module.
AST nodes must only be referenced once.
Change-Id: I5c517699ea80422800639088b97a50ba9ac27b70
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55245
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Removing parsing support for the 'in' and 'out' storage classes is
enough to prevent anyone from using the old syntax. The Input and
Output storage classes will remain in the AST for now, as the SPIR-V
reader still has codepaths that use them, and the SPIR-V writer
currently still relies on them.
Bug: tint:697
Change-Id: Ifef9eda8bcbf2f243b1e1d8d4fab25784cd3f80e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54841
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Storage buffers are emitted as `ByteAddressBuffer`s in HLSL, so we have to jump through hoops to support atomic ops on storage buffer atomics.
Workgroup atomics are far more conventional, but very little code can be shared between these two code paths.
Bug: tint:892
Change-Id: If10ea866e3b67a093e87aca689d34065fd49b705
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54651
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Instead of just generating pointers to functions, generate pointers to all permuted storage types and accesses.
Change-Id: I930b20150d823877eaf72dd7cac850078fe22f35
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54656
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Reviewed-by: David Neto <dneto@google.com>
Refer the TODO in ShaderModuleBase::InjectCompilationMessages to
issue dawn:944 for further tracking.
Bug: dawn:753
Change-Id: I2ff09ba5914f2df0182bf26e9001a66782811f06
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55223
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
After implementing validation and fairly exhaustive tests, discovered
that conversion of scalar vector to bool vector did not work in the
spir-v backend. For module scope variables, we use and rely on the
FoldConstants transform to ensure no conversion needs to take place.
This is necessary because we cannot easily introduce temporary values
and refer to them when casting at module scope. Note that for the same
reason, module-level conversions are always constant foldable, so this
works. For function-level conversions, implemented support to emit a
comparison against a zero value, and store the result in the bool
vector.
Bug: tint:865
Change-Id: I0528045e803f176e03428bc7eac31ae06920bbd7
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54744
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
This is required for implementing module-level conversions in the spir-v
backend (upcoming CL).
Bug: tint:865
Change-Id: I7fd38c6b1628c791851917165991bc247fc113c2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54740
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Add the formatted tint messages in OwnedCompilationMessages, which will be emit after creating the shader module succeeds of fails.
This patch also change the compilation messages handling in creating shader modules. Now the compilation messages are separated from sparseResult, and should be handled manually. A new method, ShaderModuleBase::InjectCompilationMessages, is introduced to move a given OwnedCompilationMessages into the shader module, and emit the formatted tint errors and warnings. This method should be called explicitly on a valid or error shader module.
Bug: dawn:753
Change-Id: I5825186c6d9c4aa7725aebd0c302bfce5e1f37cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/53890
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
This will be relied on by the upcoming arrayLength transform.
Update test expectations.
Change-Id: Ib74b647abcd6f4393f9899ce40bbf06f6e53e7f4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55180
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
The Resolver already has this information, so just propagate it to the
semantic variable.
Change-Id: Id9fc58d3fc706a1433aba7cb3845b4f53f3fc386
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55120
Auto-Submit: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Also tighten previous suppressions to only apply when using the Tint
generator.
TBR=bclayton@google.com
Bug: tint:904
Change-Id: I22210227c428eb38901904966ec2c3bd70ce607b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55200
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Copies between 3D and 2DArray textures need to be done depth/array
slice by slice via CopyTextureRegion() API on D3D12 because this
API can copy one single subresource every time.
However, if both src and dst textures are 3D texture, we can copy
all depth slices in one shot, which is a fast path for this
copy scenario.
Bug: dawn:547
Change-Id: I950ed58319fb0f30dfc8a2de3e57e8a64406f7e4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55140
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Allows for reflection of the specific textures that a sampler has
sampled.
BUG=tint:699
Change-Id: Iba47baf5c99c4d03671caf2c01747bd6ad12b1e2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54901
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
The WorkgroupSize builtin decoration applies to a composite constant.
Because WGSL does not yet support specializable constants for this,
use the *default* values for that SPIR-V spec constant.
Update end-to-end test expectations.
Fixed: tint:503
Change-Id: I012b316d13544ab9282e3276b58906327adab133
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/41960
Auto-Submit: David Neto <dneto@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Alan Baker <alanbaker@google.com>
Disabling the one test clearly wasn't enough
Bug: tint:904
Change-Id: I23f448d2f3028fff13e4eb406b08a7175166ea9d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/55100
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Sarah Mashayekhi <sarahmashay@google.com>
Reviewed-by: Sarah Mashayekhi <sarahmashay@google.com>