Commit Graph

630 Commits

Author SHA1 Message Date
Giovanni Mascellani
bb51b976df vkd3d-shader/ir: Use size_t in the parameter allocator.
The idea is to, by default, use size_t for any quantity that is
a memory size or an array index.
2025-07-23 17:16:38 +02:00
Nikolay Sivov
969b6f5946 vkd3d-shader/ir: Handle TEXLDL instructions in vsir_program_lower_instructions().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58063
2025-07-23 17:02:05 +02:00
Giovanni Mascellani
68cd72c7fc vkd3d-shader/ir: Validate ROUND_NI instructions. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
b3db78e3c1 vkd3d-shader/ir: Validate ROUND_NE instructions. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
f3f8056800 vkd3d-shader/ir: Validate RCP instructions. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
59738c7a4a vkd3d-shader/ir: Validate ORD instructions. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
6266f89827 vkd3d-shader/ir: Validate OR operations. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
1c7c66912b vkd3d-shader/ir: Validate NOT operations. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
4789295e91 vkd3d-shader/ir: Validate NEU operations. 2025-07-22 17:11:51 +02:00
Giovanni Mascellani
3234c428b3 vkd3d-shader/ir: Validate NEO operations. 2025-07-22 17:11:50 +02:00
Henri Verbeet
1487764e23 vkd3d-shader/ir: Rename VKD3D_DATA_UINT64 to VSIR_DATA_U64. 2025-07-22 14:57:26 +02:00
Henri Verbeet
742cce9a08 vkd3d-shader/ir: Rename VKD3D_DATA_UINT to VSIR_DATA_U32. 2025-07-22 14:57:26 +02:00
Henri Verbeet
163b87444f vkd3d-shader/ir: Rename VKD3D_DATA_UINT16 to VSIR_DATA_U16. 2025-07-22 14:57:26 +02:00
Henri Verbeet
a04e4e4010 vkd3d-shader/ir: Rename VKD3D_DATA_INT to VSIR_DATA_I32. 2025-07-22 14:57:26 +02:00
Giovanni Mascellani
13c9826c30 vkd3d-shader/ir: Check that OUTSTENCILREF registers have dimension SCALAR. 2025-07-22 14:55:18 +02:00
Giovanni Mascellani
7b36453b9d vkd3d-shader/ir: Check that PRIMID registers have dimension SCALAR. 2025-07-22 14:55:18 +02:00
Giovanni Mascellani
b3c1fb6740 vkd3d-shader/ir: Check that OUTPOINTID registers have dimension SCALAR. 2025-07-22 14:55:18 +02:00
Giovanni Mascellani
dfc18781cc vkd3d-shader/ir: Check that GSINSTID registers have dimension SCALAR. 2025-07-22 14:55:18 +02:00
Giovanni Mascellani
b02c3759be vkd3d-shader/ir: Check that SAMPLEMASK registers have dimension SCALAR.
Also fix the DXIL parser to emit them accordingly.
2025-07-22 14:55:18 +02:00
Giovanni Mascellani
226afa47c4 vkd3d-shader/ir: Check that THREADID registers have dimension VEC4. 2025-07-22 14:55:18 +02:00
Giovanni Mascellani
decc155cca vkd3d-shader/ir: Split updating DCL_TEMPS instructions to a dedicated pass.
So that it can be used in other contexts as well. And so that
register allocation can be run also when there is no need to update
or create DCL_TEMPS instructions.
2025-07-21 12:31:08 +02:00
Giovanni Mascellani
079e989b8e vkd3d-shader/ir: Update the program TEMP count when allocating TEMP registers. 2025-07-21 12:26:10 +02:00
Giovanni Mascellani
f5cd0b4a15 vkd3d-shader/ir: Check that THREADGROUPID registers have dimension VEC4. 2025-07-21 12:23:34 +02:00
Giovanni Mascellani
59253a5e7f vkd3d-shader/ir: Check that LOCALTHREADID registers have dimension VEC4. 2025-07-21 12:23:34 +02:00
Giovanni Mascellani
834f762cb5 vkd3d-shader/ir: Check that DEPTHOUTLE registers have dimension SCALAR.
Also fix the DXIL parser to emit them accordingly.
2025-07-21 12:23:34 +02:00