Mesa (master): i965/fs: Allow array dereference of HW_REG.
Chris Forbes
chrisf at kemper.freedesktop.org
Wed Jun 4 18:50:56 UTC 2014
Module: Mesa
Branch: master
Commit: 3c77d2a113171bf18879664884a9fa0976d02f29
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c77d2a113171bf18879664884a9fa0976d02f29
Author: Chris Forbes <chrisf at ijw.co.nz>
Date: Wed Jun 4 21:06:31 2014 +1200
i965/fs: Allow array dereference of HW_REG.
When dereferencing an element of gl_SampleMaskIn[], the source register
here will be a HW_REG rather than a VGRF because the payload slot is
now exposed directly.
Fixes an assertion failure in the Piglit test:
tests/spec/arb_gpu_shader5/execution/samplemaskin-basic
Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
Cc: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index 04b9f21..0b4fbb7 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -189,7 +189,7 @@ fs_visitor::visit(ir_dereference_array *ir)
src.type = brw_type_for_base_type(ir->type);
if (constant_index) {
- assert(src.file == UNIFORM || src.file == GRF);
+ assert(src.file == UNIFORM || src.file == GRF || src.file == HW_REG);
src.reg_offset += constant_index->value.i[0] * element_size;
} else {
/* Variable index array dereference. We attach the variable index
More information about the mesa-commit
mailing list