Nikolay Sivov
b314a9eb84
vkd3d-shader/fx: Remove newlines from the parser error messages.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-11-23 23:24:05 +01:00
Nikolay Sivov
3784919213
vkd3d-shader/fx: Implement parsing inline shader blobs.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-11-23 23:21:39 +01:00
Giovanni Mascellani
0f362ab720
vkd3d-shader/ir: Check that tessellation system value registers are consecutive.
2024-11-23 23:19:57 +01:00
Giovanni Mascellani
5894e79064
vkd3d-shader/ir: Check that all tessellation system values appear in the patch constant signature.
2024-11-23 23:19:57 +01:00
Giovanni Mascellani
0245d22c83
vkd3d-shader/ir: Validate index count for LOCALTHREADINDEX registers.
2024-11-23 23:15:40 +01:00
Giovanni Mascellani
050840f493
vkd3d-shader/ir: Validate index count for LOCALTHREADID registers.
2024-11-23 23:15:39 +01:00
Giovanni Mascellani
595fe9a7aa
vkd3d-shader/ir: Validate index count for THREADGROUPID registers.
2024-11-23 23:15:39 +01:00
Giovanni Mascellani
fd9da5db2d
vkd3d-shader/ir: Validate index count for THREADID registers.
2024-11-23 23:15:39 +01:00
Giovanni Mascellani
26251d02a9
vkd3d-shader/ir: Validate index count for TESSCOORD registers.
2024-11-23 23:15:39 +01:00
Giovanni Mascellani
f2659c14a2
vkd3d-shader/ir: Validate index count for JOININSTID registers.
2024-11-23 23:15:39 +01:00
Giovanni Mascellani
808b28b425
vkd3d-shader/ir: Validate index count for FORKINSTID registers.
2024-11-23 23:15:39 +01:00
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
2c15015ec2
tests: Test allocation rules for FFACE and SAMPLE.
...
These seem to have their own interpolation mode.
2024-11-23 23:10:56 +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
Francisco Casas
2c0773c9ad
tests: Test signature reflection for PRIMID, RTINDEX and VPINDEX.
2024-11-23 22:57:23 +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
843fc980b5
tests/shader_runner_gl: Implement tessellation support.
2024-11-21 19:27:51 +01:00
Shaun Ren
12ac1dd46b
tests/shader_runner_vulkan: Enable patch list topology support.
2024-11-21 15:11:02 +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
Victor Chiletto
3669763835
tests: Add more function overloading tests.
2024-11-21 14:52:17 +01:00
Henri Verbeet
5c00766eff
Release 1.14.
vkd3d-1.14
2024-11-21 12:35:55 +01:00
Henri Verbeet
1f09f4fb3a
include: Document the binary effect transformations supported by vkd3d_shader_compile().
2024-11-21 12:32:17 +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
Feifan He
1efc0ac740
tests/shader_runner_metal: Implement draws.
2024-11-20 14:40:10 +01:00
Feifan He
14991f2e17
tests/shader_runner_metal: Create Metal constant buffers.
2024-11-20 14:40:10 +01:00
Feifan He
176e35b6cc
tests/shader_runner_metal: Implement render target readback.
2024-11-20 14:40:10 +01:00
Feifan He
f0a864c8a2
tests/shader_runner_metal: Create Metal vertex buffers.
2024-11-20 14:40:10 +01:00
Feifan He
6d6cd8021e
tests/shader_runner_metal: Create Metal render targets.
2024-11-20 14:40:10 +01:00
Feifan He
5a679a1af3
tests/shader_runner_metal: Create vertex descriptors.
2024-11-20 14:40:10 +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
40cccaccea
tests/shader_runner_metal: Implement graphics shader compilation.
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
Feifan He
b29f1e6cdc
vkd3d-shader/msl: Add the missing output register index in msl_generate_entrypoint_epilogue().
2024-11-20 14:40:10 +01:00