diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-12-03 10:37:01 -0500 |
---|---|---|
committer | Tomeu Vizoso <[email protected]> | 2019-12-16 09:10:33 +0000 |
commit | 3448b2641a475fce9220ade229570e342882f637 (patch) | |
tree | c2d2ffd1aa866d2ee91842e1784ba9da9dfd24d1 /src/panfrost/midgard/compiler.h | |
parent | 60396340f5b9bef009e8bc34696a981f5e2b3ae2 (diff) |
pan/midgard: Fix liveness analysis with multiple epilogues
Epilogues are special fixed-function blocks, so they need special
handling for liveness analysis to work completely. This in turns fixes
RA issues for many shaders using MRT.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
Reviewed-by: Tomeu Visoso <[email protected]>
Diffstat (limited to 'src/panfrost/midgard/compiler.h')
-rw-r--r-- | src/panfrost/midgard/compiler.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/panfrost/midgard/compiler.h b/src/panfrost/midgard/compiler.h index d087579f36d..45a0617a840 100644 --- a/src/panfrost/midgard/compiler.h +++ b/src/panfrost/midgard/compiler.h @@ -198,6 +198,9 @@ typedef struct midgard_block { * simple bit fields, but for us, liveness is a vector idea. */ uint16_t *live_in; uint16_t *live_out; + + /* Indicates this is a fixed-function fragment epilogue block */ + bool epilogue; } midgard_block; typedef struct midgard_bundle { |