OSDN Git Service

i965/vec4: Make opt_vector_float reset at the top of each block
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 20 Jul 2016 19:21:41 +0000 (12:21 -0700)
committerEmil Velikov <emil.l.velikov@gmail.com>
Thu, 1 Sep 2016 09:06:24 +0000 (10:06 +0100)
commit3dca5c8eb12c34388b9dbd69744ec80feae19080
treea661f3cfa89438101fae5d9389e1b8dbbf2ff6cb
parent659d9f189cac0665f2632a5b558986fc71563a34
i965/vec4: Make opt_vector_float reset at the top of each block

The pass isn't really control-flow aware and you can get into case where it
tries to combine instructions from different blocks.  This can actually
lead to an assertion failure when removing unneeded instructions if part of
the vector is set in one block and part in another.  This prevents
regressions in the next commit.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Cc: "12.0" <mesa-stable@lists.freedesktop.org>
(cherry picked from commit 4c3a6b07e2960266adca634f8607ef38f71b8318)
src/mesa/drivers/dri/i965/brw_vec4.cpp