Home | History | Annotate | Download | only in ARM
      1 ; RUN: llc < %s -march=arm | FileCheck %s
      2 
      3 define i32 @t9(i32 %v) nounwind readnone {
      4 entry:
      5 ; CHECK: t9:
      6 ; CHECK: add r0, r0, r0, lsl #3
      7 	%0 = mul i32 %v, 9
      8 	ret i32 %0
      9 }
     10 
     11 define i32 @t7(i32 %v) nounwind readnone {
     12 entry:
     13 ; CHECK: t7:
     14 ; CHECK: rsb r0, r0, r0, lsl #3
     15 	%0 = mul i32 %v, 7
     16 	ret i32 %0
     17 }
     18 
     19 define i32 @t5(i32 %v) nounwind readnone {
     20 entry:
     21 ; CHECK: t5:
     22 ; CHECK: add r0, r0, r0, lsl #2
     23         %0 = mul i32 %v, 5
     24         ret i32 %0
     25 }
     26 
     27 define i32 @t3(i32 %v) nounwind readnone {
     28 entry:
     29 ; CHECK: t3:
     30 ; CHECK: add r0, r0, r0, lsl #1
     31         %0 = mul i32 %v, 3
     32         ret i32 %0
     33 }
     34 
     35 define i32 @t12288(i32 %v) nounwind readnone {
     36 entry:
     37 ; CHECK: t12288:
     38 ; CHECK: add r0, r0, r0, lsl #1
     39 ; CHECK: lsl{{.*}}#12
     40         %0 = mul i32 %v, 12288
     41         ret i32 %0
     42 }
     43 
     44