1 # RUN: llc -mtriple powerpc64le-unknown-linux-gnu -run-pass=ppc-early-ret -o \
2 # RUN: - %s -verify-machineinstrs | FileCheck %s
8 successors: %bb.1(0x40000000), %bb.2(0x40000000)
11 renamable $cr0 = CMPWI renamable $r3, 0
12 BC killed renamable $cr0gt, %bb.1
16 successors: %bb.2(0x80000000)
19 renamable $r3 = ADDI killed renamable $r4, 0
22 liveins: $r3, $r4, $cr0eq, $cr0lt, $cr0un, $cr0, $cr0gt, $r3, $r3, $r4, $r3, $cr0gt
24 BLR implicit $lr, implicit $rm, implicit killed $r3
26 ; CHECK-LABEL: name: testBLR
28 ; CHECK: renamable $cr0 = CMPWI renamable $r3, 0
29 ; CHECK: BC killed renamable $cr0gt, %bb.1
30 ; CHECK: BLR implicit $lr, implicit $rm, implicit killed $r3
32 ; CHECK: renamable $r3 = ADDI killed renamable $r4, 0
33 ; CHECK: BLR implicit $lr, implicit $rm, implicit killed $r3
41 successors: %bb.3(0x20000000), %bb.1(0x60000000)
42 liveins: $f1, $f2, $f3, $f4, $v2, $v3
44 renamable $cr0 = FCMPUS killed renamable $f3, killed renamable $f4
45 BCn killed renamable $cr0eq, %bb.3
48 successors: %bb.2(0x80000000)
49 liveins: $f1, $f2, $v2, $v3
51 renamable $cr0 = FCMPUS killed renamable $f1, killed renamable $f2
52 BCLR killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
55 successors: %bb.3(0x80000000)
58 $v2 = VOR killed $v3, $v3
63 BLR implicit $lr, implicit $rm, implicit killed $v2
65 ; CHECK-LABEL: name: testBCLRn
67 ; CHECK: renamable $cr0 = FCMPUS killed renamable $f3, killed renamable $f4
68 ; CHECK: BCLRn killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
70 ; CHECK: renamable $cr0 = FCMPUS killed renamable $f1, killed renamable $f2
71 ; CHECK: BCLR killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
73 ; CHECK: $v2 = VOR killed $v3, $v3
74 ; CHECK: BLR implicit $lr, implicit $rm, implicit killed $v2
82 successors: %bb.3(0x20000000), %bb.1(0x60000000)
83 liveins: $f1, $f2, $f3, $f4, $v2, $v3
85 renamable $cr0 = FCMPUS killed renamable $f3, killed renamable $f4
86 BC killed renamable $cr0eq, %bb.3
89 successors: %bb.2(0x80000000)
90 liveins: $f1, $f2, $v2, $v3
92 renamable $cr0 = FCMPUS killed renamable $f1, killed renamable $f2
93 BCLRn killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
96 successors: %bb.3(0x80000000)
99 $v2 = VOR killed $v3, $v3
104 BLR implicit $lr, implicit $rm, implicit killed $v2
106 ; CHECK-LABEL: name: testBCLR
108 ; CHECK: renamable $cr0 = FCMPUS killed renamable $f3, killed renamable $f4
109 ; CHECK: BCLR killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
111 ; CHECK: renamable $cr0 = FCMPUS killed renamable $f1, killed renamable $f2
112 ; CHECK: BCLRn killed renamable $cr0eq, implicit $lr, implicit $rm, implicit killed $v2
114 ; CHECK: $v2 = VOR killed $v3, $v3
115 ; CHECK: BLR implicit $lr, implicit $rm, implicit killed $v2
123 successors: %bb.2(0x40000000), %bb.1(0x40000000)
126 renamable $cr0 = CMPLWI killed renamable $r4, 0
127 BCC 68, renamable $cr0, %bb.2
130 successors: %bb.2(0x40000000)
133 BCC 68, killed renamable $cr0, %bb.2
136 BLR implicit $lr, implicit $rm
138 ; CHECK-LABEL: name: testBCCLR
140 ; CHECK: renamable $r4 = LI 0
141 ; CHECK: renamable $cr0 = CMPLWI killed renamable $r4, 0
142 ; CHECK: BCCLR 68, renamable $cr0, implicit $lr, implicit $rm
144 ; CHECK: BCCLR 68, killed renamable $cr0, implicit $lr, implicit $rm
145 ; CHECK: BLR implicit $lr, implicit $rm