From: Matt Turner Date: Fri, 24 Apr 2015 18:28:04 +0000 (-0700) Subject: i965/fs: Fix stride for multiply in macro. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ecf428aa5945c5e1941b6bf496a381c7a09cdda2;p=mesa.git 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 --- diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp index cf59570922f..f37fdea6978 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; } }