Commit Graph

1848 Commits

Author SHA1 Message Date
Henri Verbeet
92a7cc3420 vkd3d-shader/glsl: Implement VKD3DSIH_DP2. 2024-09-26 01:04:32 +02:00
Henri Verbeet
b9d8b84b06 vkd3d-shader/glsl: Implement VKD3DSIH_DP4. 2024-09-26 01:04:32 +02:00
Henri Verbeet
93cd63bc93 vkd3d-shader/glsl: Implement VKD3DSIH_DP3. 2024-09-26 01:04:32 +02:00
Henri Verbeet
929010ffd7 vkd3d-shader/glsl: Implement support for the VKD3DSPR_DEPTHOUT register. 2024-09-26 01:04:32 +02:00
Henri Verbeet
459f141e81 vkd3d-shader/glsl: Implement VKD3DSIH_ROUND_Z. 2024-09-26 01:04:32 +02:00
Francisco Casas
ebc4f84185 tests/shader_runner: Use skip() when the d3d12 device doesn't support shader model 6. 2024-09-24 13:54:27 +02:00
Francisco Casas
a4262c3836 tests/shader_runner: Skip the DXIL tests when DXIL support is not enabled. 2024-09-24 13:51:14 +02:00
Francisco Casas
94af1754dd tests/shader_runner: Skip the GLSL tests when GLSL support is not enabled. 2024-09-24 13:45:57 +02:00
Henri Verbeet
8e39783770 vkd3d-shader/glsl: Implement VKD3DSIH_ROUND_PI. 2024-09-24 13:38:26 +02:00
Henri Verbeet
58472e7404 vkd3d-shader/glsl: Implement VKD3DSIH_FTOU. 2024-09-24 13:38:26 +02:00
Atharva Nimbalkar
f441d3e112 vkd3d-shader/glsl: Implement VKD3DSIH_UTOF. 2024-09-24 13:38:26 +02:00
Henri Verbeet
a3d06c8f12 vkd3d-shader/glsl: Implement VKD3DSIH_FTOI. 2024-09-24 13:38:26 +02:00
Atharva Nimbalkar
b81cdcb488 vkd3d-shader/glsl: Implement VKD3DSIH_ITOF. 2024-09-24 13:38:26 +02:00
Conor McCarthy
91475c684f vkd3d: Clear the output pointer on failure in vkd3d_create_versioned_root_signature_deserializer(). 2024-09-24 13:34:40 +02:00
Conor McCarthy
ae4a6c7044 tests/d3d12: Test invalid bytecode in test_root_signature_byte_code(). 2024-09-24 13:30:33 +02:00
Arkadiusz Hiler
a3017fe9d5 vkd3d-shader/preproc: Support namespaces in macro identifiers. 2024-09-24 13:17:24 +02:00
Conor McCarthy
966e627733 tests/d3d12: Test a bounded range at the same offset as an unbounded one in test_unbounded_resource_arrays(). 2024-09-23 15:45:26 +02:00
Elizabeth Figura
650bf4d83f vkd3d-shader/hlsl: Fix a corner case in ternary type conversion.
If the condition and argument types are compatible, i.e. there is no broadcast,
the resulting shape should be the shape of the arguments, not the shape of the
condition.
2024-09-23 15:43:15 +02:00
Elizabeth Figura
b2cddecfc5 vkd3d-shader/hlsl: Use add_cast() in append_conditional_break().
Instead of creating a cast node directly.

This specifically handles the 1x1 matrix case, which currently the backend code does not expect.
2024-09-23 15:43:15 +02:00
Atharva Nimbalkar
ee8e005209 vkd3d-shader/glsl: Implement VKD3DSIH_MOVC. 2024-09-23 15:41:07 +02:00
Henri Verbeet
7b99c33510 vkd3d-shader/glsl: Implement VKD3DSIH_FRC. 2024-09-23 15:41:07 +02:00
Henri Verbeet
36c08b47e9 vkd3d-shader/glsl: Implement VKD3DSIH_GEO. 2024-09-23 15:41:07 +02:00
Henri Verbeet
28ef331704 vkd3d-shader/glsl: Implement support for VKD3DSPSM_NEG modifiers. 2024-09-23 15:41:07 +02:00
Henri Verbeet
b9366def96 vkd3d-shader/glsl: Implement VKD3DSIH_DIV. 2024-09-23 15:41:07 +02:00
Nikolay Sivov
d7def84253 vkd3d-shader/hlsl: Remove the 'double' keyword.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-09-23 15:26:35 +02:00
Nikolay Sivov
968a3dfc1a tests: Add some more tests for type name handling.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-09-23 15:26:28 +02:00
Henri Verbeet
bc70d575ae vkd3d-shader/glsl: Implement VKD3DSIH_OR. 2024-09-20 17:16:33 +02:00
Henri Verbeet
e289c3999d vkd3d-shader/glsl: Implement VKD3DSIH_INE. 2024-09-20 17:16:33 +02:00
Henri Verbeet
3b3fe1da2c vkd3d-shader/glsl: Implement VKD3DSIH_MUL. 2024-09-20 17:16:33 +02:00
Atharva Nimbalkar
2fc35da940 vkd3d-shader/glsl: Implement support for VSIR_DIMENSION_VEC4 immediate constants. 2024-09-20 17:16:33 +02:00
Henri Verbeet
2409966ff2 vkd3d-shader/glsl: Implement VKD3DSIH_NEU. 2024-09-20 17:16:33 +02:00
Henri Verbeet
c8acf285cb vkd3d-shader/glsl: Implement support for VKD3DSPSM_ABS modifiers. 2024-09-19 14:35:20 +02:00
Atharva Nimbalkar
1d485cc8a9 vkd3d-shader/glsl: Implement support for VKD3DSPR_IMMCONST registers. 2024-09-19 14:32:29 +02:00
Atharva Nimbalkar
ab07637ee1 vkd3d-shader/glsl: Implement VKD3DSIH_ADD. 2024-09-19 14:29:46 +02:00
Henri Verbeet
ae40184631 vkd3d-shader/glsl: Implement support for VKD3DSPR_CONSTBUFFER registers. 2024-09-19 14:29:46 +02:00
Francisco Casas
ffc1449412 vkd3d-shader/hlsl: Allow effect calls on default value initializers. 2024-09-14 16:09:12 +02:00
Francisco Casas
4aa262d773 vkd3d-shader/hlsl: Parse ConstructGSWithSO(). 2024-09-14 16:09:08 +02:00
Francisco Casas
3423d1b54b tests: Test ConstructGSWithSO() parsing. 2024-09-14 15:59:35 +02:00
Anna (navi) Figueiredo Gomes
e61046fb23 vkd3d-shader/hlsl: Implement the "earlydepthstencil" attribute. 2024-09-12 18:46:24 +02:00
Anna (navi) Figueiredo Gomes
fe8a2f820b tests/shader_runner: Test the "earlydepthstencil" attribute. 2024-09-12 18:45:56 +02:00
Anna (navi) Figueiredo Gomes
127ae6cf12 vkd3d: Implement d3d12_command_list_OMSetDepthBounds().
Based on the design document, "The runtime will not clamp or validate
the input, but implementations may clamp to the range [0,1] if necessary.",
so we test for the EXT_depth_range_unrestricted extension, and only clamp if
it's not available (thus, necessary to do so).

NaNs are converted to zero as per "NaNs must be treated as 0, but the runtime
will convert NaNs to 0 on behalf of the implementation.", and a default bounds
are set to 0.0 and 1.0.
2024-09-11 14:53:33 +02:00
Anna (navi) Figueiredo Gomes
61a700bcdc tests: Test depth bounds. 2024-09-11 14:53:33 +02:00
Anna (navi) Figueiredo Gomes
e761b2cad1 tests/shader_runner: Introduce a "d3d12" tag. 2024-09-11 14:53:33 +02:00
Anna (navi) Figueiredo Gomes
3eb2a3d0e4 tests/shader_runner: Introduce a 'depth-bounds' test option. 2024-09-11 14:53:21 +02:00
Anna (navi) Figueiredo Gomes
12a7cde092 tests/shader_runner: Use ID3D12Device2_CreatePipelineState() when available. 2024-09-11 14:13:59 +02:00
Anna (navi) Figueiredo Gomes
04d7ad90e5 tests/shader_runner: Extract a pipeline creation function from d3d12_runner_draw(). 2024-09-11 14:08:37 +02:00
Nikolay Sivov
de6abd964e vkd3d-shader/hlsl: Implement the mad() intrinsic.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-09-10 21:40:32 +02:00
Nikolay Sivov
75299c04fd vkd3d-shader: Handle the SV_SampleIndex semantic.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-09-10 21:39:03 +02:00
Shaun Ren
c1babbc8aa vkd3d-shader/hlsl: Validate hull shader attributes. 2024-09-04 18:30:04 +02:00
Shaun Ren
dae88bab52 vkd3d-shader/hlsl: Parse the outputcontrolpoints attribute. 2024-09-04 18:28:46 +02:00