From abacaf2aef26043ce09e3aee176a9587bb87eaf6 Mon Sep 17 00:00:00 2001 From: oli Date: Wed, 4 Nov 2020 13:41:58 +0000 Subject: `u128` truncation and sign extension are not just interpreter related --- compiler/rustc_codegen_cranelift/src/base.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'compiler/rustc_codegen_cranelift/src') diff --git a/compiler/rustc_codegen_cranelift/src/base.rs b/compiler/rustc_codegen_cranelift/src/base.rs index 2097f9d2887..bfe5514b6d3 100644 --- a/compiler/rustc_codegen_cranelift/src/base.rs +++ b/compiler/rustc_codegen_cranelift/src/base.rs @@ -585,10 +585,7 @@ fn codegen_stmt<'tcx>( .discriminant_for_variant(fx.tcx, *index) .unwrap(); let discr = if discr.ty.is_signed() { - rustc_middle::mir::interpret::sign_extend( - discr.val, - fx.layout_of(discr.ty).size, - ) + fx.layout_of(discr.ty).size.sign_extend(discr.val) } else { discr.val }; -- cgit 1.4.1-3-g733a5