1 # RUN: llc -march=x86-64 -run-pass none -o - %s | FileCheck %s
5 define i32 @foo(i32 %a) {
7 %0 = icmp sle i32 %a, 10
8 br i1 %0, label %less, label %exit
17 define i32 @bar(i32 %a) {
19 %0 = icmp sle i32 %a, 10
20 br i1 %0, label %less, label %exit
32 tracksRegLiveness: true
35 # CHECK-LABEL: name: foo
37 # CHECK-NEXT: bb.0.entry:
38 # CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
39 # CHECK-NEXT: liveins: $edi
40 # CHECK: CMP32ri8 $edi, 10, implicit-def $eflags
41 # CHECK-NEXT: JCC_1 %bb.2, 15, implicit killed $eflags
44 # CHECK-NEXT: $eax = MOV32r0 implicit-def dead $eflags
45 # CHECK-NEXT: RETQ killed $eax
48 # CHECK-NEXT: liveins: $edi
49 # CHECK: $eax = COPY killed $edi
50 # CHECK-NEXT: RETQ killed $eax
53 successors: %bb.1, %bb.2
57 CMP32ri8 $edi, 10, implicit-def $eflags
59 JCC_1 %bb.2, 15, implicit killed $eflags
64 $eax = MOV32r0 implicit-def dead $eflags
70 $eax = COPY killed $edi
76 tracksRegLiveness: true
79 # CHECK-LABEL: name: bar
81 # CHECK-NEXT: bb.0.entry:
82 # CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
83 # CHECK-NEXT: liveins: $edi
84 # CHECK: CMP32ri8 $edi, 10, implicit-def $eflags
85 # CHECK-NEXT: JCC_1 %bb.2, 15, implicit killed $eflags
88 # CHECK-NEXT: $eax = MOV32r0 implicit-def dead $eflags
89 # CHECK-NEXT: RETQ killed $eax
92 # CHECK-NEXT: liveins: $edi
93 # CHECK: $eax = COPY killed $edi
94 # CHECK-NEXT: RETQ killed $eax
98 successors: %bb.1, %bb.2
100 CMP32ri8 $edi, 10, implicit-def $eflags
101 JCC_1 %bb.2, 15, implicit killed $eflags
102 bb.1.less: $eax = MOV32r0 implicit-def dead $eflags
105 bb.2.exit: liveins: $edi
106 $eax = COPY killed $edi