summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Iglesias Gonsálvez <[email protected]>2017-02-21 08:27:30 +0100
committerSamuel Iglesias Gonsálvez <[email protected]>2017-03-01 06:50:10 +0100
commit7427425247d80c9f59a3c3ad2dfeeb2429de6f67 (patch)
tree1e4ef3ce084f4cfb69d340ac289d755982ef3e89
parente66be3d3bb40160c7b7d57c596e4a25da168f1e6 (diff)
i965/fs: mark last DF uniform array element as 64 bit live one
This bug can make that we don't detect the end of a contiguous area correctly and push larger areas than the real ones. Signed-off-by: Samuel Iglesias Gonsálvez <[email protected]> Cc: "17.0" <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index c348bc7138d..c713caa9b6f 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -1952,6 +1952,9 @@ fs_visitor::assign_constant_locations()
}
}
is_live[last] = true;
+ if (type_sz(inst->src[i].type) == 8) {
+ is_live_64bit[last] = true;
+ }
} else {
if (constant_nr >= 0 && constant_nr < (int) uniforms) {
int regs_read = inst->components_read(i) *