summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRoland Scheidegger <[email protected]>2013-02-01 08:34:36 -0800
committerRoland Scheidegger <[email protected]>2013-02-08 16:32:30 -0800
commit49f8825c49871ca956c7ed21b096f3835311f57e (patch)
treeb4eac5cb1c21f455ca28a52743d0f242bcfa7ced /src
parent67906f91c9b924306d6bfec5d718b6225390205d (diff)
gallivm: fix typo in lp_build_mul_norm
The signed case didn't do what the comment indicated. Should increase rounding precision (at the expense of performance since the former code was effectively a no-op). Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/gallium/auxiliary/gallivm/lp_bld_arit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_arit.c b/src/gallium/auxiliary/gallivm/lp_bld_arit.c
index d930f09acc3..b4e9f23dcc9 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_arit.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_arit.c
@@ -769,7 +769,7 @@ lp_build_mul_norm(struct gallivm_state *gallivm,
half = lp_build_const_int_vec(gallivm, wide_type, 1 << (n - 1));
if (wide_type.sign) {
LLVMValueRef minus_half = LLVMBuildNeg(builder, half, "");
- LLVMValueRef sign = lp_build_shr_imm(&bld, half, wide_type.width - 1);
+ LLVMValueRef sign = lp_build_shr_imm(&bld, ab, wide_type.width - 1);
half = lp_build_select(&bld, sign, minus_half, half);
}
ab = LLVMBuildAdd(builder, ab, half, "");