vkd3d-shader/ir: Introduce a vsir DCE pass.

This commit is contained in:
Elizabeth Figura
2025-03-05 14:23:40 -06:00
committed by Henri Verbeet
parent c7529028eb
commit 322c91e3f8
Notes: Henri Verbeet 2025-10-06 19:48:04 +02:00
Approved-by: Francisco Casas (@fcasas)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1718
5 changed files with 449 additions and 4 deletions

View File

@@ -1990,6 +1990,9 @@ static void d3dbc_write_vsir_instruction(struct d3dbc_compiler *d3dbc, const str
switch (ins->opcode)
{
case VSIR_OP_NOP:
break;
case VSIR_OP_DEF:
d3dbc_write_vsir_def(d3dbc, ins);
break;
@@ -2147,6 +2150,9 @@ int d3dbc_compile(struct vsir_program *program, uint64_t config_flags,
struct vkd3d_bytecode_buffer *buffer = &d3dbc.buffer;
int result;
if ((result = vsir_program_optimize(program, config_flags, compile_info, message_context)))
return result;
if ((result = vsir_allocate_temp_registers(program, message_context)))
return result;