3712 Commits

Author SHA1 Message Date
Giovanni Mascellani
860bb59c89 vkd3d-shader/ir: Validate index count for OUTPOINTID registers. 2024-11-23 23:15:39 +01:00
Giovanni Mascellani
0c3c4e0563 vkd3d-shader/ir: Validate index count for PRIMID registers. 2024-11-23 23:15:39 +01:00
Francisco Casas
64bc0515e0 vkd3d-shader/hlsl: Add special allocation rules for FFACE and SAMPLE. 2024-11-23 23:13:13 +01:00
Francisco Casas
ad5377f995 vkd3d-shader/hlsl: Add special allocation rules for PRIMID, RTINDEX, and VPINDEX.
These system values are bound to the same allocation rules as other
semantics: they can share registers with other semantics with the same
interpolation mode and they prefer forming shorter writemasks. However,
for some reason, these don't allow further semantics to share the same
register once allocated, except among themselves.
2024-11-23 23:10:46 +01:00
Giovanni Mascellani
e383834049 vkd3d-shader/ir: Check that tessellation system values only appear in the patch constant signature. 2024-11-21 19:28:46 +01:00
Giovanni Mascellani
018f3e8094 vkd3d-shader/ir: Validate tessellation system values for the given tessellator domain. 2024-11-21 19:28:46 +01:00
Giovanni Mascellani
1ed8d907b3 vkd3d-shader/ir: Keep track of the tessellator domain in struct vsir_program. 2024-11-21 19:28:46 +01:00
Giovanni Mascellani
49ec9add38 vkd3d-shader/ir: Check that semantic indices for tessellation system values are not duplicated. 2024-11-21 19:28:46 +01:00
Giovanni Mascellani
8d8de1db10 vkd3d-shader/ir: Validate the semantic index for tessellation system values. 2024-11-21 19:28:46 +01:00
Anna (navi) Figueiredo Gomes
9f3bbab2f0 vkd3d-shader/hlsl: Implement cast from bool to int for SM1. 2024-11-21 19:28:46 +01:00
Nikolay Sivov
1a6409cd5b vkd3d-shader/hlsl: Add parser support for stream-output object types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-11-21 19:28:46 +01:00
Francisco Casas
13dfccc1c6 vkd3d-shader/hlsl: Store SM4 resource stores in the vsir program. 2024-11-21 19:28:46 +01:00
Francisco Casas
5b4af411f5 vkd3d-shader/hlsl: Store SM4 loads in the vsir program. 2024-11-21 19:28:46 +01:00
Francisco Casas
874ca85a95 vkd3d-shader/hlsl: Store SM4 stores in the vsir program. 2024-11-21 19:28:46 +01:00
Francisco Casas
5dedcff665 vkd3d-shader/tpf: Remove HLSL_IR_SWIZZLE handling. 2024-11-21 19:28:46 +01:00
Shaun Ren
e20b63c55e vkd3d-shader: Implement scanning hull shader tessellation information. 2024-11-21 15:03:02 +01:00
Shaun Ren
1f4d17a4a2 vkd3d-shader/dxil: Allow zero domain input control point count. 2024-11-21 14:56:23 +01:00
Henri Verbeet
5c00766eff Release 1.14. 2024-11-21 12:35:55 +01:00
Giovanni Mascellani
05c87b02f6 vkd3d-shader/ir: Return an error when the FLAT_INTERPOLATION parameter is invalid. 2024-11-20 14:53:58 +01:00
Giovanni Mascellani
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
Henri Verbeet
df86a2842a vkd3d-shader/msl: Implement VKD3DSIH_DCL_OUTPUT. 2024-11-20 14:40:10 +01:00
Feifan He
9e3b8ec98a vkd3d-shader/msl: Output the generated shader code. 2024-11-20 14:40:10 +01:00
Henri Verbeet
2669ae16ea vkd3d-shader/msl: Implement VKD3DSIH_DCL_OUTPUT_SIV. 2024-11-20 14:40:10 +01:00
Henri Verbeet
e6acf3090d vkd3d-shader/msl: Implement VKD3DSIH_DCL_INPUT. 2024-11-20 14:40:10 +01:00
Feifan He
7a1d36ba05 vkd3d-shader/msl: Use pointers for constant buffer descriptors.
[[id]] attributes can not be applied to union references.
2024-11-20 14:40:10 +01:00