Skip to content

Commit 4e5a6d1

Browse files
committed
Fix warnings, remove unneeded unbounded_sh{l,r}
1 parent 23601d2 commit 4e5a6d1

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

compiler/rustc_const_eval/src/interpret/intrinsics.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -319,11 +319,11 @@ impl<'tcx, M: Machine<'tcx>> InterpCx<'tcx, M> {
319319
// The funnel shifts modulo by T::BITS to circumvent panics/UB.
320320
let width_bits = u32::try_from(layout_val.size.bits()).unwrap();
321321
let shift_bits = raw_shift_bits % width_bits;
322-
let inv_shift_bits = (width_bits - shift_bits);
322+
let inv_shift_bits = width_bits - shift_bits;
323323
let result_bits = if intrinsic_name == sym::funnel_shl {
324-
lhs_bits.unbounded_shl(shift_bits) | rhs_bits.unbounded_shr(inv_shift_bits)
324+
(lhs_bits << shift_bits) | rhs_bits.unbounded_shr(inv_shift_bits)
325325
} else {
326-
rhs_bits.unbounded_shr(shift_bits) | lhs_bits.unbounded_shl(inv_shift_bits)
326+
(rhs_bits >> shift_bits) | lhs_bits.unbounded_shl(inv_shift_bits)
327327
};
328328
let truncated_bits = layout_val.size.truncate(result_bits);
329329
let result = Scalar::from_uint(truncated_bits, layout_val.size);

0 commit comments

Comments
 (0)