On Wed, Sep 17, 2014 at 5:51 AM, Pohjolainen, Topi <topi.pohjolai...@intel.com> wrote: > On Tue, Sep 02, 2014 at 09:34:25PM -0700, Matt Turner wrote: >> The register coalescing portion of this patch hurts three shaders in >> Guacamelee by one instruction each, but examining the diff makes me >> believe that what we were generating was (perhaps harmlessly) incorrect. >> --- >> src/mesa/drivers/dri/i965/brw_vec4.cpp | 30 +++++++++--------------------- >> 1 file changed, 9 insertions(+), 21 deletions(-) >> >> diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp >> b/src/mesa/drivers/dri/i965/brw_vec4.cpp >> index 6669281..e3869d6 100644 >> --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp >> +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp >> @@ -513,12 +513,9 @@ vec4_visitor::dead_code_eliminate() >> } >> } >> >> - for (exec_node *node = inst->prev, *prev = node->prev; >> - prev != NULL && dead_channels != 0; >> - node = prev, prev = prev->prev) { >> - vec4_instruction *scan_inst = (vec4_instruction *)node; >> - >> - if (scan_inst->is_control_flow()) > > Last instruction of the block is not considered in the iteration, but first > instruction is. Hence if I'm reading this right, before DO and ENDIF weren't > considered but now they are.
That's true, but it doesn't have any effect, since neither do nor endif take arguments. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev