From 9094983bdd35d09fcd8dfc9c570caebdd07dc568 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 16 Sep 2015 08:45:03 -0700 Subject: [PATCH] i965/fs: try matching signed/unsigned argument types --- src/mesa/drivers/dri/i965/brw_fs.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index b4d0567..0de3e4d 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -3213,13 +3213,15 @@ fs_visitor::lower_integer_multiplication() src1_0_w.fixed_hw_reg.dw1.ud &= 0xffff; src1_1_w.fixed_hw_reg.dw1.ud >>= 16; } else { - src1_0_w.type = BRW_REGISTER_TYPE_UW; + src1_0_w.type = orig_dst.type == BRW_REGISTER_TYPE_D ? + BRW_REGISTER_TYPE_W : BRW_REGISTER_TYPE_UW; if (src1_0_w.stride != 0) { assert(src1_0_w.stride == 1); src1_0_w.stride = 2; } - src1_1_w.type = BRW_REGISTER_TYPE_UW; + src1_1_w.type = orig_dst.type == BRW_REGISTER_TYPE_D ? + BRW_REGISTER_TYPE_W : BRW_REGISTER_TYPE_UW; if (src1_1_w.stride != 0) { assert(src1_1_w.stride == 1); src1_1_w.stride = 2; -- 2.4.6