Henri Verbeet
e569245e1f
vkd3d-shader/hlsl: Implement constant folding of 'round' expressions.
2025-09-09 14:59:11 +02:00
Henri Verbeet
5a8a2bb15f
tests/hlsl: Add a constant folding test for round().
2025-09-09 14:59:11 +02:00
Henri Verbeet
23ee29a953
vkd3d-shader/hlsl: Implement constant folding of 'reinterpret' expressions.
...
As encountered in tests/hlsl/frexp.shader_test.
2025-09-09 14:59:11 +02:00
Henri Verbeet
e330ad2ac7
vkd3d-shader/hlsl: Implement constant folding of 'cos' expressions.
...
As encountered in tests/hlsl/trigonometry.shader_test.
2025-09-09 14:59:01 +02:00
Shaun Ren
d8ea8894ab
vkd3d-shader/hlsl: Support SM1 non-floating point CMP expressions.
2025-09-04 13:58:57 +02:00
Shaun Ren
df5ccd3ff0
tests/hlsl: Test ternary operations with integral vector operands.
2025-09-04 13:57:48 +02:00
Victor Chiletto
8698874628
vkd3d-shader/hlsl: Emit vsir structured loads.
2025-09-04 13:39:03 +02:00
Shaun Ren
1083b31dfd
vkd3d-shader/hlsl: Implement texCUBEbias().
2025-09-03 12:01:34 +02:00
Shaun Ren
b9545f7422
tests/hlsl: Add sample bias tests for cube textures.
2025-09-03 12:01:18 +02:00
Henri Verbeet
b9b9920593
vkd3d-shader/glsl: Implement support for VKD3DSPR_SAMPLEMASK registers.
2025-09-01 15:15:32 +02:00
Henri Verbeet
05b58c9963
vkd3d-shader/glsl: Handle SV_INSTANCE_ID inputs.
2025-09-01 15:15:32 +02:00
Henri Verbeet
9b375b3dae
vkd3d-shader/glsl: Implement VSIR_OP_UREM.
2025-09-01 15:15:32 +02:00
Henri Verbeet
d30c992039
vkd3d-shader/glsl: Implement VSIR_OP_UDIV_SIMPLE.
2025-08-28 20:06:32 +02:00
Henri Verbeet
86656b7544
vkd3d-shader/glsl: Implement VSIR_OP_SIN.
2025-08-28 20:06:32 +02:00
Henri Verbeet
ed438c1350
vkd3d-shader/glsl: Implement VSIR_OP_COS.
2025-08-28 20:06:32 +02:00
Henri Verbeet
9609903770
vkd3d-shader/glsl: Implement VSIR_OP_DSX and VSIR_OP_DSY.
2025-08-28 20:06:32 +02:00
Henri Verbeet
4c91f4aa9e
vkd3d-shader/glsl: Implement support for static texel offsets in shader_glsl_ld().
2025-08-28 20:06:32 +02:00
Henri Verbeet
a1edfc4008
vkd3d-shader/msl: Implement compute shaders.
2025-08-28 20:05:53 +02:00
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