Giovanni Mascellani
654c96fc94
tests/d3d12: Mark a texture aliasing test as todo on Intel.
2025-11-17 15:21:08 +01:00
Giovanni Mascellani
ffbf0320ba
tests/hlsl: Mark a denormalization mode test as todo on Intel.
...
It behaves the same as llvmpipe.
2025-11-17 15:20:47 +01:00
Anna (navi) Figueiredo Gomes
990be02cca
vkd3d-shader/hlsl: Add a default value fail test with all allowed instructions.
...
Co-Authored-By: Francisco Casas <fcasas@codeweavers.com >
2025-11-17 15:15:47 +01:00
Giovanni Mascellani
7f377879fc
vkd3d-shader/spirv: Clamp push constant CBV sizes to those of the push constant ranges backing them.
...
Otherwise invalid SPIR-V may be generated, because the CBV field in
"push_cb_struct" may end up overlapping with a subsequent one.
2025-11-12 15:24:30 +01:00
Giovanni Mascellani
2903831f79
tests/hlsl: Test using an SRV in combination with a CBV larger than the declared uniforms.
...
This appears to be valid on native (no validation message is
raised) but is not properly handled by vkd3d.
2025-11-12 15:19:33 +01:00
Henri Verbeet
4039168bca
vkd3d-shader/hlsl: Consider scalars to be equivalent to 1-component vectors in hlsl_add_conditional().
2025-11-12 15:12:30 +01:00
Giovanni Mascellani
7022bb57fc
tests/shader_runner_metal: Implement explicit descriptor mapping.
2025-11-12 15:02:58 +01:00
Giovanni Mascellani
653de0c076
tests/shader_runner: Generate a default descriptor mapping when none is provided.
2025-11-12 15:02:18 +01:00
Giovanni Mascellani
a30c07f510
tests/shader_runner_d3d12: Always create a descriptor heap.
...
So it's also available when resources are not used, which
simplifies later commits.
2025-11-12 14:58:15 +01:00
Giovanni Mascellani
fb985f496d
tests/shader_runner_d3d12: Appropriately set the root descriptor table for dispatching.
2025-11-12 14:57:24 +01:00
Francisco Casas
5dc96ab8d6
tests/hlsl: Test which shader models allow FOG and PSIZE.
2025-11-10 15:54:18 +01:00
Shaun Ren
58d02da892
vkd3d-shader/hlsl: Use a bool type for "new_cond" in lower_conditional_block_discard_nz().
...
This fixes the assertion error
"sm4_generate_vsir_instr_expr Failed assertion: dst_type->e.numeric.type == HLSL_TYPE_BOOL"
which occurs when compiling the following HLSL shader using the ps_4_0 target profile:
uniform float4 x;
uniform bool b;
float4 main() : SV_Target
{
if (!b)
clip(x.x);
else
clip(x.y);
return x;
}
2025-11-10 15:51:26 +01:00
Giovanni Mascellani
0c9a5b7a0c
tests/d3d12: Do not crash when failing to create a shader cache session.
...
With some (Windows 11) runtimes creating a shader cache session fails
when the requested size is too small. The test will have to be fixed for
that, but in the meantime let's at least ensure it doesn't crash.
2025-11-10 15:37:52 +01:00
Henri Verbeet
74ebd4621f
vkd3d-shader/msl: Implement VSIR_OP_FIRSTBIT_HI.
2025-11-04 14:59:38 +01:00
Henri Verbeet
c576a09d57
vkd3d-shader/msl: Implement VSIR_OP_FIRSTBIT_LO.
2025-11-04 14:59:38 +01:00
Henri Verbeet
08026880d6
vkd3d-shader/msl: Implement VSIR_OP_COUNTBITS.
2025-11-04 14:59:38 +01:00
Henri Verbeet
f431cddc9f
vkd3d-shader/msl: Implement support for VKD3DSPR_IMMCONSTBUFFER registers.
2025-11-04 14:59:38 +01:00
Henri Verbeet
51cce61770
vkd3d-shader/msl: Implement VSIR_OP_SYNC.
2025-11-04 14:59:38 +01:00
Giovanni Mascellani
d6d1485e40
ci: Execute DXC tests on 32-bit as well.
2025-11-03 17:52:54 +01:00
Giovanni Mascellani
12c713bbfa
tests/hlsl: Do not execute 64-bit wave bitwise operations on WARP.
...
They are known to be buggy on the CI machine.
2025-11-03 17:52:32 +01:00
Giovanni Mascellani
b835510010
tests/hlsl: Test shader model 6.2 denormal mode for 16-bit and 64-bit floats.
2025-10-30 19:12:39 +01:00
Giovanni Mascellani
69c109786b
tests/hlsl: Test shader model 6.2 denormal mode for 32-bit floats.
2025-10-30 19:12:27 +01:00
Giovanni Mascellani
da6ce78c1c
tests/shader_runner: Add support for testing explicit descriptor mapping.
...
When no descriptor mapping is specified, the backend will just
build the usual default mapping. Otherwise the explicit mapping
is used.
Once all backends support the explicit mapping, we'll be able to
handle generating the default mapping in the shader runner core
rather than having each backend implement its own algorithm.
So far only the d3d12 backend supports explicit descriptor
mapping.
2025-10-30 18:42:35 +01:00
Giovanni Mascellani
6b157cc149
tests/shader_runner_d3d12: Move the uniform root parameter to the end of the root signature.
...
So that it's easy to index SRV and UAV root parameters without an offset.
2025-10-30 18:27:04 +01:00
Giovanni Mascellani
cc1db404b0
vkd3d-shader/msl: Implement support for VKD3DSPR_UNDEF registers.
...
MSL doesn't seem to have any special handling for undefined values,
differently from SPIR-V. Thus we just emit zeros.
UNDEF registers are sometimes created by the DXIL parser,
for example in sm6_parser_emit_composite_construct().
2025-10-30 18:18:14 +01:00