[ARM] Enable shrink-wrapping by default.
[oota-llvm.git] / test / CodeGen / Thumb2 / thumb2-cbnz.ll
1 ; RUN: llc < %s -mtriple=thumbv7-apple-darwin -mcpu=cortex-a8 -arm-atomic-cfg-tidy=0 | FileCheck %s
2 ; rdar://7354379
3
4 declare double @foo(double) nounwind readnone
5
6 define void @t(i32 %c, double %b) {
7 entry:
8   %cmp1 = icmp ne i32 %c, 0
9   br i1 %cmp1, label %bb3, label %bb1
10
11 bb1:                                              ; preds = %entry
12   unreachable
13
14 bb3:                                              ; preds = %entry
15   %cmp2 = icmp ne i32 %c, 0
16   br i1 %cmp2, label %bb7, label %bb5
17
18 bb5:                                              ; preds = %bb3
19   unreachable
20
21 bb7:                                              ; preds = %bb3
22   %cmp3 = icmp ne i32 %c, 0
23   br i1 %cmp3, label %bb11, label %bb9
24
25 bb9:                                              ; preds = %bb7
26 ; CHECK:      cmp       r0, #0
27 ; CHECK-NEXT:      cbnz
28   %0 = tail call  double @foo(double %b) nounwind readnone ; <double> [#uses=0]
29   br label %bb11
30
31 bb11:                                             ; preds = %bb9, %bb7
32   %1 = getelementptr i32, i32* undef, i32 0
33   store i32 0, i32* %1
34   ret void
35 }