From ecf428aa5945c5e1941b6bf496a381c7a09cdda2 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Fri, 24 Apr 2015 11:28:04 -0700 Subject: [PATCH] i965/fs: Fix stride for multiply in macro. We have to use W/UW type for src1 of the multiply in the MUL/MACH macro, but in order to read the low 16-bits of each 32-bit integer, we need to set the appropriate stride. Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp index cf59570..f37fdea 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp @@ -916,8 +916,10 @@ fs_visitor::visit(ir_expression *ir) mul->src[1].type == BRW_REGISTER_TYPE_UD); if (mul->src[1].type == BRW_REGISTER_TYPE_D) { mul->src[1].type = BRW_REGISTER_TYPE_W; + mul->src[1].stride = 2; } else { mul->src[1].type = BRW_REGISTER_TYPE_UW; + mul->src[1].stride = 2; } } -- 2.7.4