about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/intrinsic/simd.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/intrinsic/simd.rs b/src/intrinsic/simd.rs
index fbfcebe46a1..a4f35c061f0 100644
--- a/src/intrinsic/simd.rs
+++ b/src/intrinsic/simd.rs
@@ -351,7 +351,7 @@ pub fn generic_simd_intrinsic<'a, 'gcc, 'tcx>(bx: &mut Builder<'a, 'gcc, 'tcx>,
         let mut result = bx.context.new_rvalue_zero(result_type);
 
         let elem_size = elem_type.get_size() * 8;
-        let sign_shift = bx.context.new_rvalue_from_int(elem_type, elem_size as i32);
+        let sign_shift = bx.context.new_rvalue_from_int(elem_type, elem_size as i32 - 1);
         let one = bx.context.new_rvalue_one(elem_type);
 
         let mut shift = 0;