Henri Verbeet
b4301a6562
vkd3d-shader/spirv: Use vsir_data_type in struct vkd3d_spirv_builtin.
2025-10-03 00:14:03 +02:00
Francisco Casas
da4d5ef339
vkd3d-shader/dxil: Get rid of sm6_parser_require_space().
...
It's not obvious what this last remaining use of
sm6_parser_require_space() is preallocating space for, and that's as
good of a reason as any to get rid of it.
2025-10-03 00:10:06 +02:00
Francisco Casas
03a58d74b9
vkd3d-shader/dxil: Don't preallocate instructions in sm6_function_emit_blocks().
2025-10-02 23:53:32 +02:00
Francisco Casas
626ad24ffe
vkd3d-shader/dxil: Don't preallocate instructions in sm6_parser_globals_init().
2025-10-02 23:53:27 +02:00
Francisco Casas
f30141f086
vkd3d-shader/dxil: Propagate parser errors in sm6_parser_init().
2025-10-02 23:52:19 +02:00
Francisco Casas
d774cde932
vkd3d-shader/dxil: Propagate the vkd3d_result of sm6_parser_declare_global().
2025-10-02 23:49:28 +02:00
Francisco Casas
1512c6c809
vkd3d-shader/dxil: Set the parser status to VKD3D_ERROR_NOT_IMPLEMENTED on missing functionality.
2025-10-02 23:47:50 +02:00
Francisco Casas
aa943c51ea
vkd3d-shader/dxil: Handle sm6_parser_add_instruction() returning NULL.
...
Only calls to sm6_parser_add_instruction() where we are using the
returned vkd3d_shader_instruction are checked for, since these return
values might cause NULL dereferences if unchecked.
Other calls to sm6_parser_add_instruction() can be left alone since the
error is still recorded via sm6->p.status.
2025-10-02 23:40:56 +02:00
Francisco Casas
bdba25d028
vkd3d-shader: Store a vkd3d_result in struct vkd3d_shader_parser.
2025-10-02 23:40:51 +02:00
Giovanni Mascellani
f9c71d5775
vkd3d-shader/ir: Execute PHI SSA to TEMP materialization in a single pass.
2025-09-30 17:18:49 +02:00
Giovanni Mascellani
fc84f80c96
vkd3d-shader/ir: Explicitly initialize instruction arrays.
...
Do not assume that zero initialization is enough, for uniformity
of interface and also to support other data structures.
2025-09-30 17:18:49 +02:00
Giovanni Mascellani
f49aa3d272
vkd3d-shader/ir: Do not carry "ins" across loop instances in vsir_program_materialize_undominated_ssas_to_temps().
...
I think this makes the code slightly more readable.
2025-09-30 17:18:05 +02:00
Henri Verbeet
6174d1af5d
vkd3d-shader/msl: Implement VSIR_OP_FREM.
2025-09-30 17:16:32 +02:00
Henri Verbeet
521efaeb7b
vkd3d-shader/msl: Implement VSIR_OP_ATAN.
2025-09-30 17:16:32 +02:00
Henri Verbeet
d9d2a00ef3
vkd3d-shader/msl: Implement VSIR_OP_ASIN.
2025-09-30 17:16:32 +02:00
Henri Verbeet
b2aac30430
vkd3d-shader/msl: Implement VSIR_OP_ACOS.
2025-09-30 17:16:32 +02:00
Henri Verbeet
ab54fc7b29
vkd3d-shader/msl: Implement VSIR_OP_HTAN.
2025-09-30 17:16:32 +02:00
Henri Verbeet
f5f03dad11
vkd3d-shader/spirv: Pass a vsir_data_type to spirv_compiler_emit_construct_vector().
2025-09-30 17:15:34 +02:00
Henri Verbeet
06b8db02da
vkd3d-shader/spirv: Pass a vsir_data_type to spirv_compiler_get_constant64().
2025-09-30 17:15:34 +02:00
Henri Verbeet
81166e5885
vkd3d-shader/spirv: Pass a vsir_data_type to spirv_compiler_get_constant().
2025-09-30 17:15:34 +02:00
Henri Verbeet
4f57e656d2
vkd3d-shader/spirv: Pass a vsir_data_type to spirv_compiler_get_constant_vector().
2025-09-30 17:15:34 +02:00
Henri Verbeet
6d8909b927
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_generate_spirv().
2025-09-30 17:15:34 +02:00
Giovanni Mascellani
ad8e41f8f2
vkd3d-shader/msl: Implement VKD3DSPR_THREADID.
2025-09-30 17:02:01 +02:00
Giovanni Mascellani
6ecfcf1910
tests/hlsl: Add a test for SV_DispatchThreadId.
2025-09-30 16:58:02 +02:00
Giovanni Mascellani
7e1fa8f3df
tests/shader_runner_metal: Enable supported UAV formats.
2025-09-30 16:57:17 +02:00