Fix possible infinite loop in shrink wrapping when searching for save/restore
[oota-llvm.git] / test / CodeGen / ARM / mul.ll
1 ; RUN: llc -mtriple=arm-eabi %s -o - | FileCheck %s
2
3 define i32 @f1(i32 %u) {
4     %tmp = mul i32 %u, %u
5     ret i32 %tmp
6 }
7
8 ; CHECK: mul
9
10 define i32 @f2(i32 %u, i32 %v) {
11     %tmp = mul i32 %u, %v
12     ret i32 %tmp
13 }
14
15 define i32 @f3(i32 %u) {
16         %tmp = mul i32 %u, 5
17         ret i32 %tmp
18 }
19
20 ; CHECK: mul
21 ; CHECK: lsl
22
23 define i32 @f4(i32 %u) {
24         %tmp = mul i32 %u, 4
25         ret i32 %tmp
26 }
27
28 ; CHECK-NOT: mul
29
30 ; CHECK: lsl
31 ; CHECK-NOT: lsl
32