Conor McCarthy
1b7340a6ed
tests/hlsl: Add a numeric types 16-bit test.
2025-02-10 13:19:16 +01:00
Conor McCarthy
49a683f260
tests/hlsl: Add arithmetic float16 tests.
2025-02-10 13:19:16 +01:00
Conor McCarthy
becb749792
tests/hlsl: Add arithmetic int16 tests.
2025-02-10 13:19:16 +01:00
Conor McCarthy
2a0d49bb58
tests/hlsl: Add more arithmetic uint16 tests.
2025-02-10 13:19:16 +01:00
Shaun Ren
ec6b4ed4ff
vkd3d-shader/hlsl: Generate vsir registers from patch variable derefs.
2025-02-03 16:36:16 +01:00
Shaun Ren
0c8414c13f
tests/hlsl: Test OutputPatch usage in patch constant functions.
2025-02-03 15:59:07 +01:00
Elizabeth Figura
75ef230fbe
tests: Add some stress tests for scope and variable definition.
2025-01-29 17:58:00 +01:00
Shaun Ren
7d1e4a40b1
tests/hlsl: Test hull shader control point function output parameters.
2025-01-29 17:53:26 +01:00
Shaun Ren
73183d33c5
tests/hlsl: Test passthrough hull shader control point function.
2025-01-29 17:52:49 +01:00
Shaun Ren
8a5559ab17
tests/hlsl: Test the syntax of InputPatch/OutputPatch variables.
2025-01-29 17:51:18 +01:00
Shaun Ren
32c081ba8c
tests/hlsl: Test invalid const variables with no initializer.
2025-01-29 17:36:58 +01:00
Conor McCarthy
033a0d29c5
tests/hlsl: Add some arithmetic uint16 shader tests.
2025-01-28 13:13:44 +01:00
Conor McCarthy
f63254d905
vkd3d-shader/dxil: Handle SV_RenderTargetArrayIndex.
2025-01-27 14:52:28 +01:00
Conor McCarthy
a557ad0aea
tests/hlsl: Add a test for SV_RenderTargetArrayIndex.
2025-01-27 14:52:28 +01:00
Elizabeth Figura
d049ea640f
vkd3d-shader/hlsl: Implement broadcasts in constant folding.
...
Normally lower_broadcasts() takes care of this, but loop unrolling executes before other constant passes.
2025-01-27 14:48:03 +01:00
Elizabeth Figura
9065a1ee23
tests: Add another unrolling test.
2025-01-27 14:47:12 +01:00
Giovanni Mascellani
343022cdc1
vkd3d-shader/spirv: Interpret the write mask as a destination swizzle for double comparison operations.
...
This fixes a failure on a shader in Wild hearts.
2025-01-22 14:51:16 +01:00
Francisco Casas
4d18fb39b6
vkd3d-shader/hlsl: Don't forbid first base type cast on var assignments.
2025-01-22 14:46:02 +01:00
Francisco Casas
0a15ab702f
vkd3d-shader/hlsl: Don't count cast to param type on IN as part of OUT var's lhs.
...
If the parameter is HLSL_STORAGE_IN, we add a cast from the arg to the
param type so that it can enter the function, however this cast should
not be considered part of the lhs on the implicit assignment that happens
if the var is also HLSL_STORAGE_OUT.
2025-01-22 14:39:20 +01:00
Francisco Casas
b55fe1950e
vkd3d-shader/hlsl: Support non-size-changing lhs casts.
2025-01-22 14:38:10 +01:00
Francisco Casas
c2e224c5fb
vkd3d-shader/hlsl: Delay lowering complex casts until after parse time.
...
While so far it has been posible to do this at parse time, this must
happen after knowing if the complex cast is on the lhs or not.
The modified tests show that before this patch we are currently
miscompiling when this happens, because a complex lhs cast is transformed
into a load, and add_assigment() just stores to the generated "cast"
temp.
2025-01-22 14:34:19 +01:00
Francisco Casas
dc37d90190
tests/hlsl: Add more function cast tests.
2025-01-22 14:29:54 +01:00
Francisco Casas
60f75cc542
tests/hlsl: Test partial assignments due to lhs casts.
2025-01-22 14:27:57 +01:00
Francisco Casas
51db232368
tests/hlsl: Add lhs cast tests.
2025-01-22 14:23:29 +01:00
Anna (navi) Figueiredo Gomes
c7b209124b
vkd3d-shader/hlsl: Consider conversions across all parameters in function_compare().
...
For example, given two arguments, half3 and float, and two functions,
func(float, float) and func(float3, float3), fxc/d3dcompiler prefers to
widen both arguments to float3.
2025-01-22 14:18:54 +01:00