brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · 6a248bb Raw
110 lines · plain
1# RUN: llc -mtriple=x86_64 -run-pass none -o - %s | FileCheck %s2 3--- |4 5  define i32 @foo(i32 %a) {6  entry:7    %0 = icmp sle i32 %a, 108    br i1 %0, label %less, label %exit9 10  less:11    ret i32 012 13  exit:14    ret i32 %a15  }16 17  define i32 @bar(i32 %a) {18  entry:19    %0 = icmp sle i32 %a, 1020    br i1 %0, label %less, label %exit21 22  less:23    ret i32 024 25  exit:26    ret i32 %a27  }28 29...30---31name:            foo32tracksRegLiveness: true33liveins:34  - { reg: '$edi' }35# CHECK-LABEL: name: foo36# CHECK: body: |37# CHECK-NEXT: bb.0.entry:38# CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)39# CHECK-NEXT: liveins: $edi40# CHECK:      CMP32ri8 $edi, 10, implicit-def $eflags41# CHECK-NEXT: JCC_1 %bb.2, 15, implicit killed $eflags42 43# CHECK:      bb.1.less:44# CHECK-NEXT: $eax = MOV32r0 implicit-def dead $eflags45# CHECK-NEXT: RET64 killed $eax46 47# CHECK:      bb.2.exit:48# CHECK-NEXT: liveins: $edi49# CHECK:      $eax = COPY killed $edi50# CHECK-NEXT: RET64 killed $eax51body: |52  bb.0.entry:53    successors: %bb.1, %bb.254 55    liveins: $edi56 57    CMP32ri8 $edi, 10, implicit-def $eflags58 59    JCC_1 %bb.2, 15, implicit killed $eflags60 61  bb.1.less:62 63 64    $eax = MOV32r0 implicit-def dead $eflags65    RET64 killed $eax66  bb.2.exit:67 68 69    liveins: $edi70    $eax = COPY killed $edi71    RET64 killed $eax72 73...74---75name:            bar76tracksRegLiveness: true77liveins:78  - { reg: '$edi' }79# CHECK-LABEL: name: bar80# CHECK: body: |81# CHECK-NEXT: bb.0.entry:82# CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)83# CHECK-NEXT: liveins: $edi84# CHECK:      CMP32ri8 $edi, 10, implicit-def $eflags85# CHECK-NEXT: JCC_1 %bb.2, 15, implicit killed $eflags86 87# CHECK:      bb.1.less:88# CHECK-NEXT: $eax = MOV32r0 implicit-def dead $eflags89# CHECK-NEXT: RET64 killed $eax90 91# CHECK:      bb.2.exit:92# CHECK-NEXT: liveins: $edi93# CHECK:      $eax = COPY killed $edi94# CHECK-NEXT: RET64 killed $eax95body: |96 97  bb.0.entry:98    successors: %bb.1, %bb.299    liveins: $edi100    CMP32ri8 $edi, 10, implicit-def $eflags101    JCC_1 %bb.2, 15, implicit killed $eflags102  bb.1.less:  $eax = MOV32r0 implicit-def dead $eflags103              RET64 killed $eax104 105  bb.2.exit:  liveins: $edi106    $eax = COPY killed $edi107    RET64 killed $eax108 109...110