From 8748b1c24f1594692e71e70cc685eb4ee802cb6b Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Mon, 15 Mar 2021 14:08:33 +0000 Subject: [PATCH] aco: add aco_print_program() flag to print kill flags MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Rhys Perry Reviewed-by: Timur Kristóf Part-of: --- src/amd/compiler/aco_ir.h | 1 + src/amd/compiler/aco_print_ir.cpp | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/amd/compiler/aco_ir.h b/src/amd/compiler/aco_ir.h index cf69e90..930f718 100644 --- a/src/amd/compiler/aco_ir.h +++ b/src/amd/compiler/aco_ir.h @@ -2014,6 +2014,7 @@ void collect_postasm_stats(Program *program, const std::vector& code); enum print_flags { print_no_ssa = 0x1, print_perf_info = 0x2, + print_kill = 0x4, }; void aco_print_operand(const Operand *operand, FILE *output, unsigned flags=0); diff --git a/src/amd/compiler/aco_print_ir.cpp b/src/amd/compiler/aco_print_ir.cpp index 3fc7054..743dc0f 100644 --- a/src/amd/compiler/aco_print_ir.cpp +++ b/src/amd/compiler/aco_print_ir.cpp @@ -181,6 +181,8 @@ void aco_print_operand(const Operand *operand, FILE *output, unsigned flags) fprintf(output, "(is16bit)"); if (operand->is24bit()) fprintf(output, "(is24bit)"); + if ((flags & print_kill) && operand->isKill()) + fprintf(output, "(kill)"); if (!(flags & print_no_ssa)) fprintf(output, "%%%d%s", operand->tempId(), operand->isFixed() ? ":" : ""); @@ -200,6 +202,8 @@ static void print_definition(const Definition *definition, FILE *output, unsigne fprintf(output, "(nuw)"); if (definition->isNoCSE()) fprintf(output, "(noCSE)"); + if ((flags & print_kill) && definition->isKill()) + fprintf(output, "(kill)"); if (!(flags & print_no_ssa)) fprintf(output, "%%%d%s", definition->tempId(), definition->isFixed() ? ":" : ""); -- 2.7.4