1# RUN: llc -mtriple powerpc64le-unknown-linux-gnu -run-pass=ppc-early-ret -o \ 2# RUN: - %s -verify-machineinstrs | FileCheck %s 3 4--- 5name: testEarlyRet 6body: | 7 bb.0.entry: 8 successors: %bb.4(0x40000000), %bb.1(0x40000000) 9 10 BC undef renamable $cr5lt, %bb.4 11 12 bb.1: 13 successors: %bb.2(0x80000000) 14 15 renamable $r3 = IMPLICIT_DEF 16 renamable $r4 = IMPLICIT_DEF 17 18 bb.2: 19 successors: %bb.3(0x80000000) 20 liveins: $r3, $r4 21 22 $r5 = OR $r4, $r4 23 renamable $r4 = ADDIC killed $r4, 1, implicit-def $carry 24 $r6 = OR $r3, $r3 25 renamable $r3 = ADDZE killed $r3, implicit-def dead $carry, implicit killed $carry 26 renamable $cr0 = CMPLW renamable $r3, killed renamable $r6 27 renamable $cr5lt = CRANDC renamable $cr0lt, renamable $cr0eq 28 renamable $cr1 = CMPLW renamable $r4, killed renamable $r5 29 BCLR killed renamable $cr5lt, implicit $lr, implicit $rm 30 31 bb.3: 32 successors: %bb.4(0x02082082), %bb.2(0x7df7df7e) 33 liveins: $cr0, $cr1, $r3, $r4 34 35 renamable $cr5lt = CRAND killed renamable $cr0eq, killed renamable $cr1lt, implicit $cr1, implicit $cr0 36 BCn killed renamable $cr5lt, %bb.2 37 38 bb.4: 39 BLR implicit $lr, implicit $rm 40 41 ; CHECK-LABEL: testEarlyRet 42 ; CHECK: bb.0.entry: 43 ; CHECK: BCLR undef renamable $cr5lt, implicit $lr, implicit $rm 44 ; CHECK: bb.1: 45 ; CHECK: renamable $r3 = IMPLICIT_DEF 46 ; CHECK: renamable $r4 = IMPLICIT_DEF 47 ; CHECK: bb.2: 48 ; CHECK: $r5 = OR $r4, $r4 49 ; CHECK: renamable $r4 = ADDIC killed $r4, 1, implicit-def $carry 50 ; CHECK: $r6 = OR $r3, $r3 51 ; CHECK: renamable $r3 = ADDZE killed $r3, implicit-def dead $carry, implicit killed $carry 52 ; CHECK: renamable $cr0 = CMPLW renamable $r3, killed renamable $r6 53 ; CHECK: renamable $cr5lt = CRANDC renamable $cr0lt, renamable $cr0eq 54 ; CHECK: renamable $cr1 = CMPLW renamable $r4, killed renamable $r5 55 ; CHECK: BCLR killed renamable $cr5lt, implicit $lr, implicit $rm 56 ; CHECK: bb.3: 57 ; CHECK: renamable $cr5lt = CRAND killed renamable $cr0eq, killed renamable $cr1lt, implicit $cr1, implicit $cr0 58 ; CHECK: BCn killed renamable $cr5lt, %bb.2 59 ; CHECK: BLR implicit $lr, implicit $rm 60... 61