i965/fs: Also do the gen4 SEND dependency workaround against other SENDs.
authorEric Anholt <eric@anholt.net>
Thu, 7 Mar 2013 01:50:50 +0000 (17:50 -0800)
committerEric Anholt <eric@anholt.net>
Mon, 11 Mar 2013 19:11:53 +0000 (12:11 -0700)
commit4dc7e6dcbf0d9c360e257c704774c9b083511b47
tree9b1542fe6d69e350f53e58550c59c4c10d488d7b
parent4c1fdae0a01b3f92ec03b61aac1d3df500d51fc6
i965/fs: Also do the gen4 SEND dependency workaround against other SENDs.

We were handling the the dependency workaround for the first written reg
of a send preceding the one we're fixing up, but didn't consider the other
regs.  Thus if you had two sampler calls that got allocated to the same
set of regs, one might, rarely, ovewrite the other.  This was occurring in
XBMC's GLSL shaders.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44567
NOTE: This is a candidate for the stable branches.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs.cpp