Commit Graph

8366 Commits

Author SHA1 Message Date
Giovanni Mascellani
f72307fc9f tests/hlsl: Evaluate asin() with larger error tolerance on SM6.
It currently fails with WARP.
2025-10-27 18:59:13 +01:00
Giovanni Mascellani
85a1fb6e47 tests/hlsl: Use explicit infinities in half.shader_test.
We used to need workarounds when we used scanf() to parse float
numbers, but now we use strtof() which supports "inf" properly.
On the other hand, on some platforms it is the workaround that
now fails with a range error.
2025-10-27 18:57:37 +01:00
Giovanni Mascellani
2b68f488f4 tests/hlsl: Do not test some details of float-to-half conversion.
Native implementations do not behave consistently.
2025-10-27 18:55:58 +01:00
Giovanni Mascellani
303790875b tests/hlsl: Use explicit infinities in cast-to-half.shader_test.
We used to need workarounds when we used scanf() to parse float
numbers, but now we use strtof() which supports "inf" properly.
On the other hand, on some platforms it is the workaround that
now fails with a range error.
2025-10-27 18:53:38 +01:00
Giovanni Mascellani
6654b88407 vkd3d-shader/ir: Check that no modifier is added to a vsir program after lowering. 2025-10-27 18:48:33 +01:00
Giovanni Mascellani
b41e99c036 vkd3d-shader/ir: Use VSIR_OP_SATURATE in insert_fragment_fog_before_ret(). 2025-10-27 18:43:33 +01:00
Giovanni Mascellani
d503fbfd79 vkd3d-shader/ir: Use VSIR_OP_SATURATE in vsir_program_normalise_ps1_output(). 2025-10-27 18:43:33 +01:00
Giovanni Mascellani
617ebb9826 vkd3d-shader/ir: Explicitly assert that vsir_program_normalise_ps1_output() runs before I/O normalization. 2025-10-27 18:43:33 +01:00
Giovanni Mascellani
c1991ba785 vkd3d-shader/ir: Use VSIR_OP_SATURATE in vsir_program_lower_texcoord(). 2025-10-27 18:43:33 +01:00
Elizabeth Figura
6633c220b7 tests: Add bump mapping tests. 2025-10-27 18:41:26 +01:00
Elizabeth Figura
6b5fe9daaf tests: Set tags in the d3d9 runner. 2025-10-27 18:23:25 +01:00
Elizabeth Figura
27e87ff0f3 tests: Allow RTV -> SRV blits in the d3d9 runner. 2025-10-27 18:23:25 +01:00
Elizabeth Figura
98ca1ecbda vkd3d-shader: Lower TEXBEML instructions. 2025-10-27 18:23:20 +01:00
Elizabeth Figura
02b0a754bd vkd3d-shader: Lower TEXBEM instructions. 2025-10-27 18:14:13 +01:00
Elizabeth Figura
5363730e17 vkd3d-shader: Lower BEM instructions.
This requires an interface to specify bump mapping constants.
2025-10-27 18:06:26 +01:00
Elizabeth Figura
24d84e2ee2 vkd3d-shader/spirv: Allow swizzling parameters.
This was previously not a concern, since all of our parameter usage involved
trivial swizzles and write masks, but bump parameters will not.
2025-10-27 17:35:14 +01:00
Giovanni Mascellani
86b8f2de35 vkd3d-shader/ir: Error out on unsupported source modifiers. 2025-10-16 15:15:05 +02:00
Giovanni Mascellani
c99c729513 vkd3d-shader/ir: Error out on unsupported destination modifiers. 2025-10-16 15:10:39 +02:00
Giovanni Mascellani
8a100fa06d vkd3d-shader/ir: Ignore and drop PARTIALPRECISION modifiers. 2025-10-16 14:57:56 +02:00
Giovanni Mascellani
8ec4f75654 vkd3d-shader/ir: Process all destinations when lowering SATURATE modifiers.
The instruction iterator should not be advanced when iterating
over more than one destination.
2025-10-16 14:56:30 +02:00
Giovanni Mascellani
737158e7b8 vkd3d-shader/ir: Remove SATURATE modifiers after lowering them. 2025-10-16 14:55:51 +02:00
Henri Verbeet
346b62bc70 vkd3d-shader/spirv: Free the output on failure in spirv_compiler_generate_spirv(). 2025-10-16 14:31:18 +02:00
Henri Verbeet
8df581b2d9 vkd3d-shader: Avoid referencing "ins" after insertion in vsir_program_materialise_phi_ssas_to_temps_in_function(). 2025-10-16 14:30:41 +02:00
Shaun Ren
27f0475dbe vkd3d-shader/ir: Keep source swizzles for registers with fixed masks in temp_allocator_set_src(). 2025-10-16 14:29:11 +02:00
Shaun Ren
b5e2e1dd06 vkd3d-shader/ir: Determine the correct writemask for destinations with fixed masks. 2025-10-16 14:27:29 +02:00