diff --git a/src/amd/compiler/aco_ir.h b/src/amd/compiler/aco_ir.h index 9eec453c8ae..3c3cb899d28 100644 --- a/src/amd/compiler/aco_ir.h +++ b/src/amd/compiler/aco_ir.h @@ -2109,6 +2109,7 @@ enum block_kind { block_kind_resume = 1 << 12, block_kind_export_end = 1 << 13, block_kind_end_with_regs = 1 << 14, + block_kind_contains_call = 1 << 15, }; /* CFG */ @@ -2320,6 +2321,10 @@ public: bool should_repair_ssa = false; + bool is_callee = false; + bool has_call = false; + bool bypass_reg_preservation = false; + struct { monotonic_buffer_resource memory; /* live-in temps per block */ diff --git a/src/amd/compiler/aco_print_ir.cpp b/src/amd/compiler/aco_print_ir.cpp index 805eb9b12a0..481cad8ceed 100644 --- a/src/amd/compiler/aco_print_ir.cpp +++ b/src/amd/compiler/aco_print_ir.cpp @@ -858,6 +858,8 @@ print_block_kind(uint16_t kind, FILE* output) fprintf(output, "export_end, "); if (kind & block_kind_end_with_regs) fprintf(output, "end_with_regs, "); + if (kind & block_kind_contains_call) + fprintf(output, "contains_call, "); } static void