aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-08-30 10:45:08 -0700
committerAlyssa Rosenzweig <[email protected]>2019-08-30 15:50:26 -0700
commit5377d702925a8a48d93d324c1a05313afad2e70a (patch)
treea0f452f861bab2f0360ba66ac275169d458c6129 /src/panfrost
parentb56399fcd2f074f92954fdeacf760022350aaf90 (diff)
pan/midgard: Extend mir_special_index to writeout
The branch has the writeout specified in its source list, making this special even if it's not explicitly part of r0. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/panfrost')
-rw-r--r--src/panfrost/midgard/mir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/panfrost/midgard/mir.c b/src/panfrost/midgard/mir.c
index ff552397bf8..9ecd2b7bab1 100644
--- a/src/panfrost/midgard/mir.c
+++ b/src/panfrost/midgard/mir.c
@@ -318,8 +318,9 @@ mir_special_index(compiler_context *ctx, unsigned idx)
mir_foreach_instr_global(ctx, ins) {
bool is_ldst = ins->type == TAG_LOAD_STORE_4;
bool is_tex = ins->type == TAG_TEXTURE_4;
+ bool is_writeout = ins->compact_branch && ins->writeout;
- if (!(is_ldst || is_tex))
+ if (!(is_ldst || is_tex || is_writeout))
continue;
if (mir_has_arg(ins, idx))