summaryrefslogtreecommitdiffstats
path: root/src/panfrost/midgard/compiler.h
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-10-03 16:10:03 -0400
committerAlyssa Rosenzweig <[email protected]>2019-10-03 22:29:50 -0400
commit013cd6bed2c6d2e3ba8a720c447cc33206ed56ae (patch)
treef032827a04b23adb66d85cc420f6269acf4d2090 /src/panfrost/midgard/compiler.h
parent76a76de7af0bc0631a2705fedf17e743c6d73842 (diff)
pan/midgard: Move RA's liveness analysis into midgard_liveness.c
There are unfortunately two distinct liveness analysis passes in the compiler right now -- one good (but complex) pass used by RA based on solving data flow equations, and one awful (but simple) pass used for dead code elimination and bundling based on an abstract walk of the AST. Let's move RA's pass into shared code so we can work on unifying. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/panfrost/midgard/compiler.h')
-rw-r--r--src/panfrost/midgard/compiler.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/panfrost/midgard/compiler.h b/src/panfrost/midgard/compiler.h
index 66cb34f9db5..5d5c26e3db9 100644
--- a/src/panfrost/midgard/compiler.h
+++ b/src/panfrost/midgard/compiler.h
@@ -604,6 +604,8 @@ struct ra_graph;
void mir_lower_special_reads(compiler_context *ctx);
struct ra_graph* allocate_registers(compiler_context *ctx, bool *spilled);
void install_registers(compiler_context *ctx, struct ra_graph *g);
+void mir_liveness_ins_update(uint8_t *live, midgard_instruction *ins, unsigned max);
+void mir_compute_liveness(compiler_context *ctx);
bool mir_is_live_after(compiler_context *ctx, midgard_block *block, midgard_instruction *start, int src);
void mir_create_pipeline_registers(compiler_context *ctx);