Commit Graph

8288 Commits

Author SHA1 Message Date
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
Henri Verbeet
b4174f5252 vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_wave_bit_count(). 2025-09-29 12:53:12 +02:00
Henri Verbeet
55ae10af3e vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_group_nonuniform_ballot(). 2025-09-29 12:53:12 +02:00
Henri Verbeet
e46b5a1f73 vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_eval_attrib(). 2025-09-29 12:53:12 +02:00
Henri Verbeet
7a4ef5ea94 vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_sample_position(). 2025-09-29 12:53:12 +02:00
Henri Verbeet
8ac0bfa5bc vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_sample_info(). 2025-09-29 12:53:12 +02:00
Henri Verbeet
161c815a39 vkd3d-shader/msl: Implement VSIR_OP_HSIN. 2025-09-29 12:51:08 +02:00
Henri Verbeet
d0ef67234d vkd3d-shader/msl: Implement VSIR_OP_HCOS. 2025-09-29 12:51:08 +02:00