r600g: do all CUBE ALU operations before gradient texture operations (v2.1)
authorDave Airlie <airlied@redhat.com>
Wed, 19 Nov 2014 00:17:35 +0000 (10:17 +1000)
committerDave Airlie <airlied@redhat.com>
Mon, 24 Nov 2014 03:33:07 +0000 (13:33 +1000)
commitc88385603ae8d983314b736a9459bbf7d002cf11
tree84c28830f12bfb3ea296824451b2aea94a1f746f
parent38ec1844193570486bf35e25a7a4339a00da127e
r600g: do all CUBE ALU operations before gradient texture operations (v2.1)

This moves all the CUBE section above the gradients section,
so that the gradient emission happens on one block which
is what sb/hardware expect.

v2: avoid changes to bytecode by using spare temps
v2.1: shame gcc, oh the shame. (uninit var warnings)

Cc: "10.4 10.3" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Glenn Kennard <glenn.kennard@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
src/gallium/drivers/r600/r600_shader.c