From 3c77d2a113171bf18879664884a9fa0976d02f29 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Wed, 4 Jun 2014 21:06:31 +1200 Subject: 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 Cc: Kenneth Graunke Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/mesa') diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp index 04b9f21b84f..0b4fbb7b00a 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 -- cgit v1.2.3