diff options
Diffstat (limited to 'src/panfrost/midgard/mir.c')
-rw-r--r-- | src/panfrost/midgard/mir.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/panfrost/midgard/mir.c b/src/panfrost/midgard/mir.c index ff5e1d1d872..33337d723b6 100644 --- a/src/panfrost/midgard/mir.c +++ b/src/panfrost/midgard/mir.c @@ -396,6 +396,10 @@ mir_mask_of_read_components(midgard_instruction *ins, unsigned node) if (ins->compact_branch && ins->writeout && (i == 0)) return 0xF; + /* Conditional branches read one component (TODO: multi branch??) */ + if (ins->compact_branch && !ins->prepacked_branch && ins->branch.conditional && (i == 0)) + return 0x1; + /* ALU ops act componentwise so we need to pay attention to * their mask. Texture/ldst does not so we don't clamp source * readmasks based on the writemask */ |