Elizabeth Figura
2256c9c7cc
vkd3d-shader/d3dbc: Move TEXKILL lowering to vsir_program_lower_d3dbc_instructions().
2025-08-21 16:23:44 +02:00
Elizabeth Figura
30a591c501
vkd3d-shader/d3dbc: Move d3dbc SINCOS lowering to vsir_program_lower_d3dbc_instructions().
2025-08-21 16:23:20 +02:00
Elizabeth Figura
12639f703e
vkd3d-shader/d3dbc: Move TEXLDL lowering to vsir_program_lower_d3dbc_instructions().
2025-08-21 16:21:25 +02:00
Elizabeth Figura
fcc5640c3e
vkd3d-shader/d3dbc: Move TEXLDD lowering to vsir_program_lower_d3dbc_instructions().
2025-08-21 16:21:18 +02:00
Francisco Casas
4dcf0b7d05
vkd3d-shader/ir: Use iterators in vsir_program_validate().
2025-08-21 16:17:38 +02:00
Francisco Casas
d3ad3e071a
vkd3d-shader/ir: Use iterators in vsir_update_dcl_temps().
2025-08-21 16:13:54 +02:00
Francisco Casas
e3fe2cec07
vkd3d-shader/ir: Use iterators in vsir_allocate_temp_registers().
2025-08-21 16:13:24 +02:00
Francisco Casas
687a4ab243
vkd3d-shader/ir: Use iterators in track_liveness().
2025-08-21 16:12:43 +02:00
Francisco Casas
5485429073
vkd3d-shader/ir: Use iterators in vsir_program_insert_vertex_fog().
2025-08-21 16:08:20 +02:00
Francisco Casas
d74d28e8ac
vkd3d-shader/ir: Use iterators in vsir_program_insert_fragment_fog().
2025-08-21 16:06:59 +02:00
Henri Verbeet
5bbd44c063
vkd3d-shader: Implement scanning compute shader thread group size information.
...
Metal doesn't allow the thread group size to be specified by shaders,
instead requiring it to be specified by the dispatch API.
2025-08-21 16:02:44 +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
Shaun Ren
45e549c1b2
vkd3d-shader/msl: Implement VSIR_OP_UGE.
2025-08-21 15:32:37 +02:00
Shaun Ren
b8776bb6bd
vkd3d-shader/glsl: Implement VSIR_OP_UGE.
2025-08-21 15:32:37 +02:00
Shaun Ren
4c37800f52
vkd3d-shader/hlsl: Check whether "expr" has more than 2 operands in hlsl_normalize_binary_exprs().
2025-08-21 15:32:27 +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
Petrichor Park
0b8abe754a
tests: Normalise NAN values in compare_float() and compare_double().
...
I.e., ignore the mantissa/payload of NAN values.
2025-08-21 15:29:27 +02:00
Henri Verbeet
a083748626
tests/shader_runner: Use read_f64() to parse "uniform" directives.
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
Henri Verbeet
f732fb7889
Release 1.17.
vkd3d-1.17
2025-08-21 12:52:13 +02:00
Brendan Shanks
44fffee5e1
tests: Add dxcompiler.h to .gitignore.
2025-08-14 10:34:44 +02:00
Brendan Shanks
bb2a6a0322
include: Add additional generated files to .gitignore.
2025-08-14 10:34:44 +02:00
Henri Verbeet
975ba8f9da
vkd3d-shader: Document that vkd3d_shader_scan() supports HLSL sources.
2025-08-14 10:33:45 +02:00