panfrost/midgard: Fix liveness analysis bugs

This fixes liveness analysis with respect to inline constants and
branching. in practice, the symptom is abnormally high register
pressure.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Ryan Houdek <Sonicadvance1@gmail.com>
This commit is contained in:
Alyssa Rosenzweig 2019-05-22 02:41:51 +00:00 committed by Alyssa Rosenzweig
parent c54f3f42eb
commit 550be763fa

View file

@ -31,8 +31,14 @@
static bool
midgard_is_live_in_instr(midgard_instruction *ins, int src)
{
if (ins->ssa_args.src0 == src) return true;
if (ins->ssa_args.src1 == src) return true;
if (ins->compact_branch)
return false;
if (ins->ssa_args.src0 == src)
return true;
if (!ins->ssa_args.inline_constant && ins->ssa_args.src1 == src)
return true;
return false;
}