vc4: Allow multi-instruction QIR nodes to get VPM optimization.

There used to be multi-instruction operations that would use src[] twice,
which is why we couldn't do some optimizations on them.  This is no longer
the case.

total instructions in shared programs: 77973 -> 77969 (-0.01%)
instructions in affected programs:     84 -> 80 (-4.76%)
total estimated cycles in shared programs: 234165 -> 234157 (-0.00%)
estimated cycles in affected programs:     92 -> 84 (-8.70%)
This commit is contained in:
Eric Anholt
2016-03-21 12:18:07 -07:00
parent 99a759a4a3
commit e46b48963a
+2 -2
View File
@@ -65,7 +65,7 @@ qir_opt_vpm(struct vc4_compile *c)
* result, try to move the instruction up in place of the VPM read.
*/
list_for_each_entry(struct qinst, inst, &c->instructions, link) {
if (!inst || qir_is_multi_instruction(inst))
if (!inst)
continue;
if (qir_depends_on_flags(inst) || inst->sf)
@@ -132,7 +132,7 @@ qir_opt_vpm(struct vc4_compile *c)
continue;
struct qinst *inst = c->defs[temp];
if (!inst || qir_is_multi_instruction(inst))
if (!inst)
continue;
if (qir_depends_on_flags(inst) || inst->sf)