462 Commits

Author SHA1 Message Date
9f3bbad6bc vkd3d-shader/ir: Validate index count for COVERAGE registers. 2024-11-25 20:45:44 +01:00
0f362ab720 vkd3d-shader/ir: Check that tessellation system value registers are consecutive. 2024-11-23 23:19:57 +01:00
5894e79064 vkd3d-shader/ir: Check that all tessellation system values appear in the patch constant signature. 2024-11-23 23:19:57 +01:00
0245d22c83 vkd3d-shader/ir: Validate index count for LOCALTHREADINDEX registers. 2024-11-23 23:15:40 +01:00
050840f493 vkd3d-shader/ir: Validate index count for LOCALTHREADID registers. 2024-11-23 23:15:39 +01:00
595fe9a7aa vkd3d-shader/ir: Validate index count for THREADGROUPID registers. 2024-11-23 23:15:39 +01:00
fd9da5db2d vkd3d-shader/ir: Validate index count for THREADID registers. 2024-11-23 23:15:39 +01:00
26251d02a9 vkd3d-shader/ir: Validate index count for TESSCOORD registers. 2024-11-23 23:15:39 +01:00
f2659c14a2 vkd3d-shader/ir: Validate index count for JOININSTID registers. 2024-11-23 23:15:39 +01:00
808b28b425 vkd3d-shader/ir: Validate index count for FORKINSTID registers. 2024-11-23 23:15:39 +01:00
860bb59c89 vkd3d-shader/ir: Validate index count for OUTPOINTID registers. 2024-11-23 23:15:39 +01:00
0c3c4e0563 vkd3d-shader/ir: Validate index count for PRIMID registers. 2024-11-23 23:15:39 +01:00
e383834049 vkd3d-shader/ir: Check that tessellation system values only appear in the patch constant signature. 2024-11-21 19:28:46 +01:00
018f3e8094 vkd3d-shader/ir: Validate tessellation system values for the given tessellator domain. 2024-11-21 19:28:46 +01:00
1ed8d907b3 vkd3d-shader/ir: Keep track of the tessellator domain in struct vsir_program. 2024-11-21 19:28:46 +01:00
49ec9add38 vkd3d-shader/ir: Check that semantic indices for tessellation system values are not duplicated. 2024-11-21 19:28:46 +01:00
8d8de1db10 vkd3d-shader/ir: Validate the semantic index for tessellation system values. 2024-11-21 19:28:46 +01:00
05c87b02f6 vkd3d-shader/ir: Return an error when the FLAT_INTERPOLATION parameter is invalid. 2024-11-20 14:53:58 +01:00
36510cd0be vkd3d-shader/ir: Move applying flat interpolation to a dedicated pass.
I/O normalisation is already a rather complicated pass that does a
lot of things, so it's better to keep anything not strictly
related to it somewhere else.
2024-11-20 14:53:47 +01:00
0dc07f5cce vkd3d-shader: Silence a spurious -Wmaybe-uninitialized in vsir_program_insert_alpha_test(). 2024-11-14 14:12:13 +01:00
2996ad6bd2 vkd3d-shader/dxil: Implement DX intrinsic SampleIndex. 2024-11-13 16:18:13 +01:00
3d53d90d4b vkd3d-shader/ir: Add a secondary sort by sysval for signature element register merges.
Fixes output signature normalisation failures in Silent Hill 2 caused by
failure of shader_signature_find_element_for_reg().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57359
2024-11-13 13:32:32 +01:00
fb8660c196 vkd3d-shader/ir: Add an is_pre_rasterization_shader() helper. 2024-11-05 20:00:27 +01:00
a10ee075ff vkd3d-shader/ir: Force fog and point size to 1 component when normalizing I/O. 2024-11-05 19:57:41 +01:00
e6c84862a8 vkd3d-shader/ir: Search for SV_TARGET0 vsir_program_insert_alpha_test().
As opposed to any SV_TARGET with register index 0. We care about the
semantic index here, not the register index.
2024-11-04 15:32:05 +01:00