Shaun Ren
320c3c9652
vkd3d-shader/hlsl: Fold some general conditional identities.
...
The following conditional identities are applied:
c ? x : x -> x
false ? x : y -> y; true ? x : y -> x
c ? true : false -> c; c ? false : true -> !c
!c ? x : y -> c ? y : x
Lastly, for expression chains x, y in a conditional expression
c ? x : y,
we evaluate all conditionals in the expression chains with the
condition c, assuming c is true (for x), or false (for y).
2025-08-21 16:00:51 +02:00
Shaun Ren
245430002a
vkd3d-shader/hlsl: Fold some general unary identities.
...
The following unary identities are applied:
||x|| -> |x|
|-x| -> |x|
~(~x) -> x
f(g(x)) -> g(x), where f(), g() are floor() or ceil() functions.
-(-x) -> x
!!x -> x
!(x == y) -> x != y, !(x < y) -> x >= y, etc (for integers).
2025-08-21 16:00:46 +02:00
Petrichor Park
d964d55b4a
vkd3d-shader/hlsl: Implement the frexp() intrinsic.
2025-08-21 15:29:27 +02:00
Petrichor Park
ea6104cf5e
tests/hlsl: Add some tests for the frexp() intrinsic.
2025-08-21 15:29:27 +02:00
Henri Verbeet
31136ead05
tests/shader_runner: Use read_f32() to parse "uniform" directives.
2025-08-21 15:29:27 +02:00
Elizabeth Figura
f9bb84e5ef
vkd3d-shader/d3dbc: Lower TEXCRD.
2025-08-07 19:30:29 +02:00
Elizabeth Figura
731b94f6f9
vkd3d-shader/d3dbc: Lower 1.4 TEXLD.
2025-08-07 19:05:25 +02:00
Henri Verbeet
ce20f9d4b2
tests/shader_runner_d3d12: Check whether the d3d12 device supports geometry shaders.
2025-08-06 12:04:16 +02:00
Shaun Ren
4bb880f9ed
vkd3d-shader/hlsl: Support interlocked operations on non-indexed groupshared variables.
2025-08-05 16:33:08 +02:00
Shaun Ren
8d0d8d106b
vkd3d-shader/hlsl: Support stores to raw groupshared variables.
2025-08-05 16:32:34 +02:00
Victor Chiletto
161d463f3c
tests/hlsl: Add a few extra structured buffer matrix load + swizzle tests.
2025-08-05 14:25:44 +02:00
Henri Verbeet
721859005f
tests: Strip reflection data from dxbc-tpf-hex shaders.
2025-08-04 15:00:02 +02:00
Henri Verbeet
243207701b
tests/shader_runner: Parse hex blobs as a list of 32-bit integers.
2025-08-04 15:00:02 +02:00
Giovanni Mascellani
3817df1164
tests/shader_runner_metal: Run the Metal shader runner with DXIL shaders.
2025-08-04 14:34:23 +02:00
Conor McCarthy
691dd49e49
vkd3d-shader/dxil: Handle SV_PrimitiveId outputs.
2025-08-04 11:54:46 +02:00
Conor McCarthy
1293db7536
tests/hlsl: Add a test for SV_PrimitiveId inputs and outputs.
2025-08-04 11:54:46 +02:00
Conor McCarthy
b9fe19701c
vkd3d-shader/dxil: Handle SV_ViewportArrayIndex.
2025-07-31 14:55:33 +02:00
Conor McCarthy
cd8cea6913
tests: Replace test_ps_viewport_index() with a shader runner test.
...
Mainly to allow testing the functionality in question with DXIL shaders
as well.
2025-07-31 14:55:33 +02:00
Elizabeth Figura
d0ce3e61bf
tests/hlsl: Add a regression test for packed SV_IsFrontFace.
...
This tests f0906e9c5c .
2025-07-31 14:54:15 +02:00
Giovanni Mascellani
aba355896f
vkd3d-shader/hlsl: Reject geometry shaders with instance count.
...
We currently emit a warning and miscompile them.
2025-07-29 12:51:06 +02:00
Giovanni Mascellani
3797c922a5
tests/hlsl: Test SV_GSInstanceID.
2025-07-29 12:50:23 +02:00
Nikolay Sivov
83e54bdc0c
vkd3d-shader/hlsl: Handle HLSL_RESOURCE_SAMPLE_LOD in sm1_generate_vsir_instr_resource_load().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58063
2025-07-23 17:06:21 +02:00
Francisco Casas
faeff50548
tests/hlsl: Add additional semantic cascading tests.
...
These test make the shader runner segfault before implementing it,
because it miscompiles and there are unused input layout elements.
So they are on their own commit.
2025-07-21 11:57:01 +02:00
Francisco Casas
a9a5c77222
vkd3d-shader/hlsl: Make input semantics on structs cascade down onto the fields.
2025-07-21 11:57:01 +02:00
Francisco Casas
9836c88ac6
tests/hlsl: Add semantic cascading tests.
...
Co-authored-by: Petrichor Park <ppark@codeweavers.com >
2025-07-21 11:20:14 +02:00