Commit Graph

270 Commits

Author SHA1 Message Date
Giovanni Mascellani
c45bb5badc vkd3d-shader/ir: Introduce a helper for validating DCL_GL_INSTANCES. 2024-09-16 13:53:52 +02:00
Giovanni Mascellani
dec7a0dbd2 vkd3d-shader/ir: Introduce a helper for validating DCL_OUTPUT_TOPOLOGY. 2024-09-16 13:53:52 +02:00
Giovanni Mascellani
22ba37c8b9 vkd3d-shader/ir: Introduce a helper for validating DCL_VERTICES_OUT. 2024-09-16 13:53:51 +02:00
Giovanni Mascellani
936adff58b vkd3d-shader/ir: Introduce a helper for validating DCL_INPUT_PRIMITIVE. 2024-09-16 13:53:51 +02:00
Giovanni Mascellani
0f07a2c512 vkd3d-shader/ir: Introduce a helper for validating DCL_HS_MAX_TESSFACTOR. 2024-09-16 13:53:51 +02:00
Giovanni Mascellani
e1c3266793 vkd3d-shader/ir: Record entering a block in the LABEL validation handler. 2024-09-16 13:53:51 +02:00
Giovanni Mascellani
1d21588de7 vkd3d-shader/ir: Record leaving a block in the relevant validation handlers. 2024-09-16 13:53:51 +02:00
Giovanni Mascellani
3e012c355d vkd3d-shader/ir: Validate NOP instructions. 2024-09-14 16:44:17 +02:00
Giovanni Mascellani
27b421be6a vkd3d-shader/ir: Do not access a missing destination register when validating PHI. 2024-09-14 16:44:17 +02:00
Giovanni Mascellani
e27cf68173 vkd3d-shader/ir: Introduce a helper for validating PHI. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
9696a0cd4a vkd3d-shader/ir: Introduce a helper for validating SWITCH_MONOLITHIC. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
ce6306c6fb vkd3d-shader/ir: Introduce a helper for validating BRANCH. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
504f4223c2 vkd3d-shader/ir: Introduce a helper for validating LABEL. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
c447a062c4 vkd3d-shader/ir: Introduce a helper for validating RET. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
88b3d4fb3a vkd3d-shader/ir: Introduce a helper for validating ENDSWITCH. 2024-09-14 16:44:16 +02:00
Giovanni Mascellani
4939f580a4 vkd3d-shader/ir: Introduce a helper for validating SWITCH. 2024-09-14 16:44:16 +02:00
Henri Verbeet
6b0baeb6c2 vkd3d-shader/ir: Merge vsir_program_normalise_combined_samplers() into vsir_program_lower_instructions(). 2024-09-14 16:11:45 +02:00
Henri Verbeet
3b68aa5b87 vkd3d-shader/ir: Introduce vsir_src_param_init_sampler(). 2024-09-14 16:11:45 +02:00
Henri Verbeet
7ea8a29036 vkd3d-shader/ir: Introduce vsir_src_param_init_resource(). 2024-09-14 16:11:45 +02:00
Henri Verbeet
ca445cd832 vkd3d-shader/ir: Move the instruction helpers together. 2024-09-14 16:11:45 +02:00
Henri Verbeet
d54e2ebd7d vkd3d-shader/ir: Move the destination parameter helpers up. 2024-09-14 16:11:45 +02:00
Henri Verbeet
4bad83c9fb vkd3d-shader/ir: Move the source parameter helpers up. 2024-09-14 16:11:45 +02:00
Giovanni Mascellani
44222ea739 vkd3d-shader/ir: Introduce a helper for validating ENDREP. 2024-09-13 15:59:49 +02:00
Giovanni Mascellani
e9fbbf26bb vkd3d-shader/ir: Introduce a helper for validating REP. 2024-09-13 15:59:15 +02:00
Giovanni Mascellani
bf9022d3df vkd3d-shader/ir: Introduce a helper for validating ENDLOOP. 2024-09-13 15:58:46 +02:00
Giovanni Mascellani
5ce10b9e68 vkd3d-shader/ir: Introduce a helper for validating LOOP. 2024-09-13 15:58:01 +02:00
Giovanni Mascellani
34c8aaad29 vkd3d-shader/ir: Introduce a helper for validating ENDIF. 2024-09-13 15:57:39 +02:00
Giovanni Mascellani
244838d344 vkd3d-shader/ir: Introduce a helper for validating ELSE. 2024-09-13 15:56:18 +02:00
Giovanni Mascellani
8af2d04dbc vkd3d-shader/ir: Introduce a helper for validating IFC. 2024-09-13 15:54:51 +02:00
Giovanni Mascellani
af687c9522 vkd3d-shader/ir: Introduce a helper for validating IF. 2024-09-13 15:54:16 +02:00
Giovanni Mascellani
35fe5b48c8 vkd3d-shader/ir: Introduce a helper for validating DCL_TEMPS. 2024-09-13 15:52:07 +02:00
Giovanni Mascellani
866f138875 vkd3d-shader/ir: Record the control flow type in the program. 2024-09-12 18:31:32 +02:00
Giovanni Mascellani
dcee148b1a vkd3d-shader/ir: Move the control flow type enumeration to vkd3d_shader_private.h. 2024-09-12 18:27:20 +02:00
Feifan He
5df81049aa vkd3d-shader/msl: Call vsir_program_transform() before generating code. 2024-09-12 18:09:00 +02:00
Giovanni Mascellani
b31c9831fa vkd3d-shader/ir: Print results as signed numbers. 2024-09-11 15:13:14 +02:00
Giovanni Mascellani
096f133b09 vkd3d-shader/ir: Rename vsir_program_normalise() to vsir_program_transform(). 2024-09-11 15:13:14 +02:00
Giovanni Mascellani
03ab0156a2 vkd3d-shader/ir: Run validation after inserting the alpha test. 2024-09-11 15:13:14 +02:00
Giovanni Mascellani
5c0d640d18 vkd3d-shader/ir: Run validation after flattening control flow constructs. 2024-09-11 15:13:14 +02:00
Giovanni Mascellani
4b06729be8 vkd3d-shader/ir: Run validation after normalising combined samplers. 2024-09-11 15:13:14 +02:00
Giovanni Mascellani
c2fd1e42fd vkd3d-shader/ir: Run validation after removing dead code. 2024-09-11 15:13:14 +02:00
Conor McCarthy
e550901efa vkd3d-shader/ir: Free the semantic names of deleted signature elements in shader_signature_merge(). (Valgrind) 2024-09-10 21:45:22 +02:00
Giovanni Mascellani
828dfdf1bd vkd3d-shader/ir: Run validation after normalising flat constants. 2024-09-10 21:43:14 +02:00
Giovanni Mascellani
1c285d40bd vkd3d-shader/ir: Run validation after normalising I/O registers. 2024-09-10 21:43:14 +02:00
Giovanni Mascellani
d8c41cc270 vkd3d-shader/ir: Run validation after normalising Hull Shader control points I/O registers. 2024-09-10 21:43:14 +02:00
Giovanni Mascellani
a3fdc447de vkd3d-shader/ir: Run validation after flattening hull shader phases. 2024-09-10 21:43:14 +02:00
Giovanni Mascellani
5fd93c28c4 vkd3d-shader/ir: Run validation after remapping the output signature. 2024-09-10 21:43:14 +02:00
Giovanni Mascellani
bfd1fc9cd6 vkd3d-shader/ir: Assume that Hull Shaders have a control point phase in vsir_program_normalise_io_registers().
The control point phase is always introduced, when missing, by the
earlier instruction_array_normalise_hull_shader_control_point_io()
pass.
2024-09-05 16:33:05 +02:00
Giovanni Mascellani
7b9a1bf6df vkd3d-shader/ir: Run validation after materializing undominated SSAs to TEMPs. 2024-09-05 16:29:47 +02:00
Giovanni Mascellani
08c1f4d45e vkd3d-shader/ir: Run validation after flattening control flow constructs. 2024-09-05 16:29:17 +02:00
Giovanni Mascellani
455c826a6a vkd3d-shader/ir: Run validation after structurization. 2024-09-05 16:29:11 +02:00