Commit Graph

5898 Commits

Author SHA1 Message Date
Giovanni Mascellani
bcaa1d50b0 vkd3d-shader/ir: Validate data types for destination shifts. 2025-06-24 15:28:00 +02:00
Giovanni Mascellani
1862c28b90 vkd3d-shader/ir: Validate data types for SATURATE destination modifiers. 2025-06-24 15:27:48 +02:00
Giovanni Mascellani
318d7466a8 vkd3d-shader/ir: Validate data types for NOT source modifiers. 2025-06-24 15:27:38 +02:00
Giovanni Mascellani
65c23999e8 vkd3d-shader/ir: Validate data types for ABSNEG source modifiers. 2025-06-24 15:27:29 +02:00
Giovanni Mascellani
0252e2e660 vkd3d-shader/ir: Validate data types for ABS source modifiers. 2025-06-24 15:27:02 +02:00
Giovanni Mascellani
31581b0002 vkd3d-shader/ir: Lower IMUL and UMUL to IMUL_LOW. 2025-06-24 15:21:13 +02:00
Giovanni Mascellani
4a39db797b vkd3d-shader/ir: Introduce VKD3DSIH_IMUL_LOW.
It is meant to compute the lower word of an integer multiplication.
2025-06-24 15:15:56 +02:00
Shaun Ren
f3dec58423 vkd3d-shader/hlsl: Ignore the 'groupshared' modifier for non-compute shaders. 2025-06-24 14:54:25 +02:00
Shaun Ren
4ede2f1365 vkd3d-shader/hlsl: Allow memory barriers in SM4+ target profiles. 2025-06-24 14:51:34 +02:00
Shaun Ren
84a0a8ae86 vkd3d-shader/hlsl: Handle nodes with NULL data types in hlsl_replace_node(). 2025-06-24 14:50:43 +02:00
Shaun Ren
3bf232e841 vkd3d-shader/hlsl: Only dump store writemasks for single register types.
This fixes a segfault on matrix stores in dump_ir_store().
2025-06-24 14:50:21 +02:00
Conor McCarthy
d8edf20c2b vkd3d-shader/dxil: Convert constant buffer minimum-precision source registers. 2025-06-23 20:12:31 +02:00
Conor McCarthy
dda2ec1814 vkd3d-shader/ir: Allow constant buffer loads to have a minimum precision.
DXIL constant buffer loads can have precision modifiers.
2025-06-23 20:07:53 +02:00
Shaun Ren
b8cbe03308 vkd3d-shader/hlsl: Remove a leftover TODO message.
The max output size check for stream outputs is done via
validate_max_output_size().
2025-06-23 18:29:27 +02:00
Nikolay Sivov
ba5d5a8091 vkd3d-shader/fx: Fix the order of the "MaterialDiffuse" and "MaterialAmbient" state entries.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:28:41 +02:00
Nikolay Sivov
92c711a7d5 vkd3d-shader/fx: Add a format-specific callback to write state assignments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:27:11 +02:00
Nikolay Sivov
3537feb45c vkd3d-shader/fx: Move entry count updates out of the state block writing helper.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:17:48 +02:00
Nikolay Sivov
43a29044d6 vkd3d-shader/fx: Move state decomposition to the fx_4_0-specific writing path.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:16:17 +02:00
Nikolay Sivov
9f9cf59b6e vkd3d-shader/fx: Use the same state data helpers for both fx_2_0 and fx_4+.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:12:27 +02:00
Nikolay Sivov
99d61aeb89 vkd3d-shader/fx: Use a version-independent structure for states.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-23 18:12:27 +02:00
Giovanni Mascellani
f6af47f9b6 vkd3d-shader/ir: Validate data types for DW source modifiers. 2025-06-23 18:11:22 +02:00
Giovanni Mascellani
bc4dda75dd vkd3d-shader/ir: Validate data types for DZ source modifiers. 2025-06-23 18:11:12 +02:00
Giovanni Mascellani
6ef23544f4 vkd3d-shader/ir: Validate data types for X2NEG source modifiers. 2025-06-23 18:11:01 +02:00
Giovanni Mascellani
2d783da3a7 vkd3d-shader/ir: Validate data types for X2 source modifiers. 2025-06-23 18:10:50 +02:00
Giovanni Mascellani
eec2b13dc6 vkd3d-shader/ir: Validate data types for COMP source modifiers. 2025-06-23 18:10:25 +02:00