Ben Clayton
279864c774
test/tint: Show that tint:1183 is fixed
...
Fixed: tint:1183
Change-Id: I06c8faf37218c58836c2a30d2b1e89abf8dc2be8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108643
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2022-11-04 17:49:47 +00:00
Ben Clayton
4b60615eae
test/tint: Fix e2e test generation for vec / mat
...
Where the intrinsic uses the fixed-dimension form of the types.
Change-Id: I1709382f762fe7394bbd88f428f09b15a1a8a643
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108642
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Ben Clayton <bclayton@google.com >
2022-11-04 17:06:03 +00:00
Ben Clayton
be35dec1c6
test/tint: Fix e2e test generation for abstract
...
Abstract int and abstract float were around the wrong way.
Credit goes to amaiorano@ for finding this!
Change-Id: Ifaeeca86b0d15ead295b714e0c178fa6d0bfb68b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108641
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Auto-Submit: Ben Clayton <bclayton@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-04 16:54:02 +00:00
Antonio Maiorano
6fcc4f3a54
tint: const eval of reverseBits
...
Bug: tint:1581
Change-Id: I3dd1ea2c774f9fc0dff87b71f25375a469c3d05e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108300
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-04 13:48:26 +00:00
Ben Clayton
02f04d914d
tint/transform: Polyfill bit-shift with RHS modulo
...
Fixed: tint:1453
Fixed: tint:1543
Change-Id: Idb5af752d7a3bb9e181cc47430ad4ddfb707873d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108440
Auto-Submit: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-11-03 19:15:17 +00:00
dan sinclair
91e27f25f9
Add const-eval for floor.
...
This Cl adds const-eval for the `floor` builtin.
Bug: tint:1581
Change-Id: I992eba3aa6c66707e923907a4bb912c2f6f8d290
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108343
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2022-11-03 17:10:49 +00:00
dan sinclair
abd6a7d9d4
Add const-eval for ceil
...
This CL adds const-eval for the `ceil` builtin
Bug: tint:1581
Change-Id: I32957d17000df1a8a59ce37f49b6177d1087406c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108342
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-11-03 15:59:23 +00:00
dan sinclair
9cbc7e1e54
Implement const-eval for acos
...
This CL adds const-eval for the `acos` builtin.
Bug: tint:1581
Change-Id: I01c0f48e73eedf87cf9c912715487f8eea44f64e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108341
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-03 14:49:23 +00:00
dan sinclair
b3518d8b4d
Implement const eval of abs
...
This CL adds const-eval for the `abs` builtin.
Bug: tint:1581
Change-Id: I6ee25c07620990f72a6962441aec62ae7665653e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108340
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-03 14:47:18 +00:00
Antonio Maiorano
11f0c52bfb
tint: const eval of extractBits
...
Bug: tint:1581
Change-Id: I56e9b7de9aef803eaf6304c122f40e5a0c4dce67
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108203
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2022-11-03 13:03:08 +00:00
dan sinclair
58eca19f33
Add const-eval for all.
...
This CL adds const-eval for the `all` builtin.
Bug: tint:1581
Change-Id: Ib1d857ba24114c61e1a90b30dd66d063edfa136d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107464
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-03 12:07:49 +00:00
Ben Clayton
c6b381495d
tint/transform: Refactor transforms
...
Replace the ShouldRun() method with Apply() which will do the
transformation if it needs to be done, otherwise returns
'SkipTransform'.
This reduces a bunch of duplicated scanning between the old ShouldRun()
and Transform().
This change also adjusts code style to make the transforms more
consistent.
Change-Id: I9a6b10cb8b4ed62676b12ef30fb7764d363386c6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107681
Reviewed-by: James Price <jrprice@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-11-03 08:41:19 +00:00
Antonio Maiorano
336f3536e5
tint: const eval of insertBits
...
Bug: tint:1581
Change-Id: Id89530eb90d3c75bd1f99dd67a78cad1c923c6f0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107924
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2022-11-02 20:40:23 +00:00
Ben Clayton
9535f72209
tint/validator: Hint 'var' instead of 'const'
...
Involves expanding the source range of a variable declaration so we can point at something that can include the 'const'.
Fixed: tint:1740
Change-Id: Ie8f784de34a1792002aaa708c1b77053be54f1b5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108120
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: David Neto <dneto@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
2022-11-02 18:14:59 +00:00
Ben Clayton
c81f9dce07
tint: Implement const-eval of quantizeToF16
...
Bug: tint:1581
Change-Id: I5cf9806bde7875282d3b67731dbb88666523f598
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108142
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-11-02 17:29:48 +00:00
Zhaoming Jiang
6ab5d3c151
Tint/transform: make AddBlockAttribute always do wrapping if possible
...
This CL make transform AddBlockAttribute always try to wrap types used
by buffer variables into a struct, in order to generate valid GLSL code
for assigning one buffer struct variable to another buffer struct
variable.
Fixed: tint:1735
Change-Id: I009d8a9ca7ecea1dc0ad6164275c964a18acb33f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108023
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com >
2022-11-02 02:25:38 +00:00
Ben Clayton
2bea9055f4
tint: Implement runtime quantizeToF16()
...
Fixed: tint:991
Fixed: tint:1741
Change-Id: I55dbabce6d28adf5abb710dc1e3e879c5aaa6be5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/108140
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Commit-Queue: Ben Clayton <bclayton@google.com >
2022-11-02 00:09:50 +00:00
Ben Clayton
c02feff258
tint/cmd: Add --rename-all flag
...
Renames all symbols
Add a test for tint:1725
Bug: tint:1725
Change-Id: Idac45c677d15361d76510068ad756e2f9bffacb0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106880
Auto-Submit: Ben Clayton <bclayton@google.com >
Kokoro: Ben Clayton <bclayton@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Commit-Queue: Ben Clayton <bclayton@google.com >
2022-11-01 16:12:23 +00:00
Antonio Maiorano
a3175f28f6
tint: const eval of firstTrailingBit
...
Bug: tint:1581
Change-Id: I4a9cb113780439849aec10cd0fc8e2f6d2ab55cc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107881
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
2022-10-31 22:57:14 +00:00
Antonio Maiorano
1abe52dc1c
tint: const eval of firstLeadingBit
...
Bug: tint:1581
Change-Id: I33c87ced173938bcd16e00debdd5c6682b4a9426
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107763
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
2022-10-31 20:34:36 +00:00
Antonio Maiorano
76c21c070b
tint: const eval of countOneBits
...
Bug: tint:1581
Change-Id: I156cbd162010d28ec25b410220638e810fc34c98
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107701
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2022-10-31 18:44:15 +00:00
Ben Clayton
6dbb463f1d
tint/writers: Polyfill integer clamp()
...
...to `min(max(e, low), high)` as defined by the WGSL spec.
Fixed: tint:1479
Fixed: tint:1539
Change-Id: I39406d5256a155a781e44bd9d6081ce7a9bf5a68
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107640
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Ben Clayton <bclayton@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2022-10-31 17:54:49 +00:00
Ben Clayton
be83128031
tint/transform: Don't hoist textures / samplers
...
in the PromoteSideEffectsToDecl transform
Fixed: tint:1739
Change-Id: Iaa5a6e086708a6bba601c59962042650829795f6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107683
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
2022-10-31 17:33:35 +00:00
Ben Clayton
22c4850b06
tint/resolver: Allow array sizes to be unnamed override-expressions
...
I got the rules around this wrong. This should be allowed, but the array types cannot compare equal if they are unnamed override-expressions.
Fixed tint:1737
Change-Id: I83dc49703eed015e9c183e804474886da5dad7b9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107685
Reviewed-by: James Price <jrprice@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Auto-Submit: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-31 17:26:10 +00:00
James Price
3e1bc0a6da
tint: Use MergeReturn transform in SPIR-V backend
...
Bug: tint:1627
Change-Id: I5a3639543b076e6f666bfcca8c61b22db7f2630e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107363
Commit-Queue: James Price <jrprice@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
2022-10-31 15:41:41 +00:00
dan sinclair
8a523d7d8e
Add const-eval for any.
...
This CL adds const-eval for the `any` builtin.
Bug: tint:1581
Change-Id: I32d8946b3cd5c6d210b75104fa37c4d1ef6a6f84
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107542
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-29 16:21:24 +00:00
Antonio Maiorano
7494e10f91
tint: const eval of countTrailingZeros
...
Bug: tint:1581
Change-Id: I2967ea1d6f3f297c03795bddd0e26abcccd57184
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107700
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-29 14:02:38 +00:00
Antonio Maiorano
2be5167e3e
tint: const eval of countLeadingZeros
...
Bug: tint:1581
Change-Id: Ib7ae9f36dad64c1eed3ce223af47e92aa0a663f1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107661
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
2022-10-29 14:02:38 +00:00
Ben Clayton
46de10299f
tint/transform/builtin_polyfill: Don't polyfill @const builtins
...
We don't want to replace builtins that are constant-expression
evaluated, as the replacement cannot be used as a constant expression.
Fixed: tint:1667
Change-Id: I554d9884fc41890247ee64b47a70621be5fcdbe5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107680
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Auto-Submit: Ben Clayton <bclayton@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-28 20:46:07 +00:00
Antonio Maiorano
2048d4f6ef
tint: fix identity initializer of vec from vec of abstract not remaining abstract
...
For "vec3(vec3<T>) -> vec3<T>", this CL makes T also include abstract
int and float (all scalars).
Bug: tint:1731
Change-Id: I776c7ba6872c3d680982dbec6b0970389e720611
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107540
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Ben Clayton <bclayton@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2022-10-28 15:58:38 +00:00
dan sinclair
c395660ee6
Add const-eval for sign.
...
This CL adds const-eval for the `sign` builtin.
Bug: tint:1581
Change-Id: I5d9bfd3f3f742bcba69fbb0d7f47dc57ce18e134
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107460
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2022-10-28 14:56:50 +00:00
dan sinclair
fd1b5a893d
Set specific test value for asin test cases.
...
The value of 1 for the `asin` is providing a slightly different result on OSX
compared to the Windows and Linux results. This CL updates the test case to use
asin(0.479425538604) = 0.5
Bug: tint:1581
Change-Id: Ibf7a921d1476c0d24da696eb6cc2b491c1ca1516
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107541
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
2022-10-28 12:31:08 +00:00
dan sinclair
91ed6f7289
Add const-eval for saturate.
...
This CL adds const-eval for the `saturate` builtin.
Bug: tint:1581
Change-Id: I3729ea5b381b04b73bbe1bc8e03e5ce65c27e082
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107362
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-27 16:41:44 +00:00
dan sinclair
c98ad87368
Add const-eval for step.
...
This CL adds const-eval for the `step` builtin.
Bug: tint:1581
Change-Id: Idbf773fb88892a8a5e620bcfe8b779dee148f746
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107281
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-27 15:32:45 +00:00
dan sinclair
59d9c89ff7
Add const-eval for asin and asinh.
...
This CL adds const-eval for the `asin` and `asinh` operators.
Bug: tint:1581
Change-Id: I18b2eeb4fb85b8979012b48551eefa773d1b980e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106980
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-27 15:10:20 +00:00
Ben Clayton
a92f4259d5
tint/writer/msl: Move packed_vector hacks to transform
...
Attempting to paper over all the MSL standard library holes for packed_vector in the MSL writer added complexity to the writer, produced messy output, and didn't actually catch all the cases where casts were needed.
Add a new PackedVec3 transform that applies the packed_vector -> vec casts in a smarter, more precise way.
Fixed: tint:1534
Change-Id: I73ce7e5a62fbc9cb04e1093133070f5fb8965dce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107340
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Commit-Queue: Ben Clayton <bclayton@chromium.org >
2022-10-27 14:36:49 +00:00
Ben Clayton
2e376a9bb0
tint/intrinsics: Allow mixing of signed / unsigned integer arguments
...
Fixed: tint:1733
Change-Id: Id83c5c5a59df062320a9a9fde087a34b85fbaa2a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107160
Commit-Queue: Ben Clayton <bclayton@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-10-26 18:47:02 +00:00
Ben Clayton
13f089095f
tint/intrinsics: Texture queries now return unsigned integer / vectors
...
To match the spec.
Also add a bunch of missing texture test cases to
src/tint/ast/builtin_texture_helper_test.cc. Fix all the tests that were
broken because these were not being exercised.
Fixed: tint:1526
Change-Id: I207b51d307bbdc054b595e0e0e0fd3330607e171
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106681
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Auto-Submit: Ben Clayton <bclayton@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-26 18:36:44 +00:00
dan sinclair
b3b027d3cd
Update lexer to not include - in numbers.
...
This CL removes the parsing of a `-` in front of numerics when lexed.
This will cause the number to become a UnaryOperator negation then the
number instead of a negative number.
Bug: tint:1679, tint:1141, tint:1570
Change-Id: I217c0ffcbe5be934c8d56bd83141b47ade83bc60
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106463
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-26 15:20:47 +00:00
Zhaoming Jiang
4faf3581b8
Tint/builder/spirv: Fix atomicCompareExchangeWeak wrong return
...
This CL fix the spv code generated for atomicCompareExchangeWeak,
specifically the emulated `exchanged` field of the returned struct.
It should be true if and only if the `old_value`, i.e. the return value
of spv `OpAtomicCompareExchange`, equals to the comparator, rather than
equals to new value.
Fixed: tint:1663
Change-Id: I1cb0de6bb6b90ae681f5053b8bdd6f6b247146f6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107180
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com >
2022-10-26 08:23:25 +00:00
Antonio Maiorano
25fdff1ff8
Unrevert "tint: rhs of left shift is always u32 or vector of u32"
...
Was failing e2e tests. Bug fixed in a parent commit.
Bug: tint:1713
Change-Id: I5cf20e6fd21e6358bb418f2ede7f4a7e0a61f138
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/107141
Reviewed-by: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-25 23:37:07 +00:00
dan sinclair
4c8401f33c
Add const-eval for atanh.
...
This CL adds const-eval for the `atanh` operator.
Bug: tint:1581
Change-Id: I7d8989a348ad1d8ca463dae90233fd82d6faf2d9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106849
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
2022-10-25 18:03:56 +00:00
Ben Clayton
bd5bd247f0
tint/resolver: Limit scope depth / if-chains.
...
DXC will bail if these get too deeply nested (~256).
This is also a risk for stack-overflows, so apply a limit agreed by the
WGSL working group.
Fixed: tint:1518
Change-Id: Idacdba85b36b27a0a89a3a7958fd4c6cce7dc84d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/105964
Auto-Submit: Ben Clayton <bclayton@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: David Neto <dneto@google.com >
2022-10-25 16:53:06 +00:00
Ben Clayton
95dd428c75
tint/intrinsics.def: Add @test_value() annotation
...
Specifies the value to use for argument values when generating end-to-end tests.
Use this to provide a legal value for atanh().
Change-Id: I008050c856f9d687ab918c68e90678c4e74f3a1d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106887
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-10-25 13:08:45 +00:00
Ben Clayton
c3adc78cbc
test/tint/builtins: Remove hack for 'level' parameter value
...
I'm sure this was needed at one point, but I can't seem to find the
requirement in either the spec or implementation. *shrug*
Change-Id: I8c139747c2a6864867ecda0b82a5f7991ad9d3ef
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106886
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-10-25 13:08:45 +00:00
Ben Clayton
6c33dce75a
tint/test/builtins/gen: Fix i32 argument values
...
These were incorrectly abstract-int, instead of i32. Oops.
Change-Id: Iafac4883ee431b04fb473392f545ae26436f8343
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106885
Kokoro: Kokoro <noreply+kokoro@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-10-25 13:08:45 +00:00
Ben Clayton
da5424b617
tint: Allow signed / unsigned texture builtin params
...
Bug: tint:1526
Change-Id: I301a9ba6e94b162a1ffb436be3e3212b723b7401
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106682
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
Kokoro: Kokoro <noreply+kokoro@google.com >
Commit-Queue: Ben Clayton <bclayton@google.com >
2022-10-24 23:58:53 +00:00
dan sinclair
20500b8e3a
Add const-eval for atan.
...
This CL adds const-eval for the `atan` operator.
Bug: tint:1581
Change-Id: I3d9b417e86af010dc2f18c4e0424ddf971d55984
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106844
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Commit-Queue: Dan Sinclair <dsinclair@chromium.org >
2022-10-24 21:57:27 +00:00
Antonio Maiorano
087c355e08
Revert "tint: rhs of left shift is always u32 or vector of u32"
...
This reverts commit cc9ae5cae3 .
Reason for revert: Kokoro failed on this CL
Original change's description:
> tint: rhs of left shift is always u32 or vector of u32
>
> Implements recent spec change:
> https://github.com/gpuweb/gpuweb/pull/3516
>
> Bug: tint:1713
> Change-Id: I678e3c15ec8ab010dca43fc814cf0bc79486f4b6
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106721
> Commit-Queue: Antonio Maiorano <amaiorano@google.com >
> Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
TBR=dsinclair@chromium.org ,amaiorano@google.com ,noreply+kokoro@google.com ,dawn-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: I9d2337b77e2853c9e26300d0bfdbfba744c54c48
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: tint:1713
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106847
Reviewed-by: Antonio Maiorano <amaiorano@google.com >
Reviewed-by: dan sinclair <dsinclair@google.com >
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
2022-10-24 20:30:12 +00:00
Antonio Maiorano
cc9ae5cae3
tint: rhs of left shift is always u32 or vector of u32
...
Implements recent spec change:
https://github.com/gpuweb/gpuweb/pull/3516
Bug: tint:1713
Change-Id: I678e3c15ec8ab010dca43fc814cf0bc79486f4b6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/106721
Commit-Queue: Antonio Maiorano <amaiorano@google.com >
Reviewed-by: Dan Sinclair <dsinclair@chromium.org >
2022-10-24 18:30:11 +00:00