summaryrefslogtreecommitdiff
path: root/src/amd/compiler/aco_print_ir.cpp
diff options
context:
space:
mode:
authorRhys Perry <pendingchaos02@gmail.com>2021-04-20 17:35:41 +0100
committerMarge Bot <eric+marge@anholt.net>2021-04-21 11:09:33 +0000
commit776ba401153224d8cfec0cbfbdf6992078398936 (patch)
tree19d8cf2490097567da6d9f1575893b6aa6491f05 /src/amd/compiler/aco_print_ir.cpp
parent2d36232e62ae7daba7ab0ed23f890d6c0e4a35c3 (diff)
downloadmesa-776ba401153224d8cfec0cbfbdf6992078398936.tar.gz
aco: add and use Program::progress
This is used when printing the program and to avoid updating register demand during post-RA liveness analysis. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10315>
Diffstat (limited to 'src/amd/compiler/aco_print_ir.cpp')
-rw-r--r--src/amd/compiler/aco_print_ir.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/amd/compiler/aco_print_ir.cpp b/src/amd/compiler/aco_print_ir.cpp
index ba2925e97ef..47a3e98e9c2 100644
--- a/src/amd/compiler/aco_print_ir.cpp
+++ b/src/amd/compiler/aco_print_ir.cpp
@@ -906,6 +906,19 @@ void aco_print_block(const Block* block, FILE *output, unsigned flags, const liv
void aco_print_program(const Program *program, FILE *output, const live& live_vars, unsigned flags)
{
+ switch (program->progress) {
+ case CompilationProgress::after_isel:
+ fprintf(output, "After Instruction Selection:\n");
+ break;
+ case CompilationProgress::after_spilling:
+ fprintf(output, "After Spilling:\n");
+ flags |= print_kill;
+ break;
+ case CompilationProgress::after_ra:
+ fprintf(output, "After RA:\n");
+ break;
+ }
+
print_stage(program->stage, output);
for (Block const& block : program->blocks)