summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
diff options
context:
space:
mode:
authorJason Ekstrand <jason.ekstrand@intel.com>2014-09-08 15:26:24 -0700
committerJason Ekstrand <jason.ekstrand@intel.com>2014-09-30 10:29:13 -0700
commit1385a4b706afa71eebcb72cd232faecc0b956b50 (patch)
treeb91b743f3eb29003ed35c68069ca7a7f0bb38daf /src/mesa/drivers/dri/i965/brw_fs_generator.cpp
parentf0d43c09b2fa32db66b7b6dc13becb0c7d3edeea (diff)
downloadexternal_mesa3d-1385a4b706afa71eebcb72cd232faecc0b956b50.zip
external_mesa3d-1385a4b706afa71eebcb72cd232faecc0b956b50.tar.gz
external_mesa3d-1385a4b706afa71eebcb72cd232faecc0b956b50.tar.bz2
i965/fs: Use the UW type for the destination of VARYING_PULL_CONSTANT_LOAD instructions
Using a floating-point type doesn't usually cause hangs on my HSW, but the simulator complains about it quite a bit. Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_generator.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_generator.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
index e523df5..6ba9c0e 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
@@ -1079,7 +1079,7 @@ fs_generator::generate_varying_pull_constant_load_gen7(fs_inst *inst,
uint32_t surf_index = index.dw1.ud;
brw_inst *send = brw_next_insn(p, BRW_OPCODE_SEND);
- brw_set_dest(p, send, dst);
+ brw_set_dest(p, send, retype(dst, BRW_REGISTER_TYPE_UW));
brw_set_src0(p, send, offset);
brw_set_sampler_message(p, send,
surf_index,
@@ -1128,7 +1128,7 @@ fs_generator::generate_varying_pull_constant_load_gen7(fs_inst *inst,
/* dst = send(offset, a0.0) */
brw_inst *insn_send = brw_next_insn(p, BRW_OPCODE_SEND);
- brw_set_dest(p, insn_send, dst);
+ brw_set_dest(p, insn_send, retype(dst, BRW_REGISTER_TYPE_UW));
brw_set_src0(p, insn_send, offset);
brw_set_indirect_send_descriptor(p, insn_send, BRW_SFID_SAMPLER, addr);