i965/fs: detect different bit size accesses to uniforms to push them in proper locations
authorSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Mon, 20 Feb 2017 10:03:46 +0000 (11:03 +0100)
committerSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Wed, 1 Mar 2017 05:50:29 +0000 (06:50 +0100)
commita497ab6838ae5a9898abfed82f7bc8295b490911
tree30b74e44267579dec5839ae3d14d37b333414bc3
parent7427425247d80c9f59a3c3ad2dfeeb2429de6f67
i965/fs: detect different bit size accesses to uniforms to push them in proper locations

Previously, if we had accesses with different sizes to the same uniform, we might not
push it aligned with the bigger one. This is a problem in BSW/BXT when we access
an array of DF uniform with both direct and indirect addressing because for the latter
we use 32-bit MOV INDIRECT instructions. However this problem can happen with other
generations and bitsizes.

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Cc: "17.0" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
src/mesa/drivers/dri/i965/brw_fs.cpp