; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 4 ; RUN: llc < %s -mtriple=x86_64-linux-gnu | FileCheck %s define i64 @off(i8 signext %a) { ; CHECK-LABEL: off: ; CHECK: # %bb.0: # %entry ; CHECK-NEXT: addb $-128, %dil ; CHECK-NEXT: movzbl %dil, %eax ; CHECK-NEXT: shll $3, %eax ; CHECK-NEXT: retq entry: %add = xor i8 %a, -128 %conv2 = zext i8 %add to i64 %mul = shl nuw nsw i64 %conv2, 3 ret i64 %mul }