Commit Graph

456 Commits

Author SHA1 Message Date
Giovanni Mascellani
5348427c62 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_cbuffer_load(). 2025-12-08 17:38:56 +01:00
Giovanni Mascellani
4c3f430a5c vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_calculate_lod(). 2025-12-08 17:38:41 +01:00
Giovanni Mascellani
6b042b3ce3 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_buffer_update_counter(). 2025-12-08 17:37:22 +01:00
Giovanni Mascellani
7d481b6c2d vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_buffer_store(). 2025-12-08 17:34:53 +01:00
Giovanni Mascellani
89c17a142e vkd3d-shader/dxil: Use sm6_parser_add_function_instruction() in sm6_parser_emit_reg_composite_construct(). 2025-12-08 17:28:49 +01:00
Giovanni Mascellani
cd230078a7 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_raw_buffer_load(). 2025-12-04 20:11:14 +01:00
Giovanni Mascellani
203fc6d773 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_buffer_load(). 2025-12-04 20:08:43 +01:00
Giovanni Mascellani
e0ef0c4a67 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_barrier(). 2025-12-04 19:41:59 +01:00
Giovanni Mascellani
1941be3cc5 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_atomic_binop(). 2025-12-04 19:31:46 +01:00
Giovanni Mascellani
8d0f82c45a vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_dx_unary(). 2025-12-04 19:31:45 +01:00
Henri Verbeet
9ddb815127 vkd3d-shader/ir: Rename struct vkd3d_shader_src_param to struct vsir_src_operand. 2025-12-04 19:22:30 +01:00
Henri Verbeet
59c8c1b8fa vkd3d-shader/ir: Rename struct vkd3d_shader_dst_param to struct vsir_dst_operand. 2025-12-04 19:21:37 +01:00
Giovanni Mascellani
90196f7d01 vkd3d-shader/dxil: Remove sm6_parser_emit_unhandled().
It's currently useless, when there is a failure we drop out of
sm6_parser_function_init() before even checking what the current
instruction or value looks like.
2025-12-03 15:23:10 +01:00
Giovanni Mascellani
f64432d4ec vkd3d-shader/dxil: Take the record from the function emission state in sm6_parser_emit_call(). 2025-12-03 15:15:59 +01:00
Giovanni Mascellani
c2ff59e80b vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_br(). 2025-12-03 15:15:59 +01:00
Giovanni Mascellani
2855f2d605 vkd3d-shader/dxil: Pass the function emission state to sm6_parser_emit_br(). 2025-12-03 15:15:59 +01:00
Giovanni Mascellani
83ebe58984 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_binop(). 2025-12-03 15:15:59 +01:00
Giovanni Mascellani
5d51d89ef1 vkd3d-shader/dxil: Pass the function emission state to sm6_parser_emit_binop(). 2025-12-03 15:15:59 +01:00
Giovanni Mascellani
1e4764d555 vkd3d-shader/dxil: Parse the f32 denormalization mode. 2025-12-02 14:26:16 +01:00
Giovanni Mascellani
193cf51a59 vkd3d-shader/dxil: Set the attribute group count to zero if allocation fails. 2025-12-02 14:04:24 +01:00
Giovanni Mascellani
90a38d6c0e vkd3d-shader/dxil: Parse parameter attribute records. 2025-12-02 14:02:18 +01:00
Giovanni Mascellani
3058958d8b vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_atomicrmw(). 2025-12-02 13:39:44 +01:00
Giovanni Mascellani
eeb3592379 vkd3d-shader/dxil: Handle allocation failure in sm6_parser_emit_atomicrmw(). 2025-12-02 13:39:44 +01:00
Giovanni Mascellani
9457dc9c75 vkd3d-shader/dxil: Take the record from the function emission state in sm6_parser_emit_atomicrmw(). 2025-12-02 13:39:44 +01:00
Giovanni Mascellani
26f9644fb6 vkd3d-shader/dxil: Allocate instructions directly in sm6_parser_emit_alloca().
I think the main argument for preallocating instructions and
passing them to helpers is that this simplifies error handling.
However it seems that the simplification is close to negligible,
while the current solution makes it harder to use the iterator
abstraction layer for the instruction array, and it also makes
the code harder to read and check.
2025-12-02 13:39:44 +01:00