Mesa (master): i965: Fix sampler state pointer adjustment for nonconst samplers

Chris Forbes chrisf at kemper.freedesktop.org
Wed Nov 5 10:40:42 UTC 2014


Module: Mesa
Branch: master
Commit: 1ca88aa58217239da84a426c29f05b5b53855951
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1ca88aa58217239da84a426c29f05b5b53855951

Author: Chris Forbes <chrisf at ijw.co.nz>
Date:   Wed Nov  5 06:41:13 2014 +1300

i965: Fix sampler state pointer adjustment for nonconst samplers

This started hitting an assertion recently. Only affects Haswell
(Ivybridge doesn't support this meddling with the sampler state pointer,
and ARB_gpu_shader5 is not enabled yet on Broadwell)

14 Piglits crash->pass.

Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_eu_emit.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c
index bb6334b..bb12a26 100644
--- a/src/mesa/drivers/dri/i965/brw_eu_emit.c
+++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c
@@ -2409,7 +2409,7 @@ void brw_adjust_sampler_state_pointer(struct brw_compile *p,
 
       struct brw_reg temp = vec1(retype(scratch, BRW_REGISTER_TYPE_UD));
 
-      brw_AND(p, temp, sampler_index, brw_imm_ud(0x0f0));
+      brw_AND(p, temp, get_element_ud(sampler_index, 0), brw_imm_ud(0x0f0));
       brw_SHL(p, temp, temp, brw_imm_ud(4));
       brw_ADD(p,
               get_element_ud(header, 3),




More information about the mesa-commit mailing list