Home | History | Annotate | Download | only in X86
      1 ; RUN: llc < %s -march=x86 | FileCheck %s
      2 
      3 define i32 @t1(i8 zeroext %x) nounwind readnone ssp {
      4 entry:
      5 ; CHECK-LABEL: t1:
      6 ; CHECK: shll
      7 ; CHECK-NOT: movzwl
      8 ; CHECK: ret
      9   %0 = zext i8 %x to i16
     10   %1 = shl i16 %0, 5
     11   %2 = zext i16 %1 to i32
     12   ret i32 %2
     13 }
     14 
     15 define i32 @t2(i8 zeroext %x) nounwind readnone ssp {
     16 entry:
     17 ; CHECK-LABEL: t2:
     18 ; CHECK: shrl
     19 ; CHECK-NOT: movzwl
     20 ; CHECK: ret
     21   %0 = zext i8 %x to i16
     22   %1 = lshr i16 %0, 3
     23   %2 = zext i16 %1 to i32
     24   ret i32 %2
     25 }
     26