74 lines · plain
1# RUN: llc -mtriple=x86_64 -run-pass none -o - %s | FileCheck %s2# This test ensures that the MIR parser parses machine basic block operands.3 4--- |5 6 define i32 @foo(ptr %p) {7 entry:8 %a = load i32, ptr %p9 %0 = icmp sle i32 %a, 1010 br i1 %0, label %less, label %exit11 12 less:13 ret i32 014 15 exit:16 ret i32 %a17 }18 19 define i32 @bar(ptr %p) {20 entry:21 %a = load i32, ptr %p22 %b = icmp sle i32 %a, 1023 br i1 %b, label %0, label %124 25 ; <label>:026 ret i32 027 28 ; <label>:129 ret i32 %a30 }31 32...33---34# CHECK: name: foo35name: foo36body: |37 ; CHECK: bb.0.entry38 bb.0.entry:39 successors: %bb.1, %bb.240 41 $eax = MOV32rm $rdi, 1, _, 0, _42 ; CHECK: CMP32ri8 $eax, 1043 ; CHECK-NEXT: JCC_1 %bb.2, 1544 CMP32ri8 $eax, 10, implicit-def $eflags45 JCC_1 %bb.2, 15, implicit $eflags46 ; CHECK: bb.1.less:47 48 bb.1.less:49 $eax = MOV32r0 implicit-def $eflags50 51 bb.2.exit:52 RET64 $eax53...54---55# CHECK: name: bar56name: bar57body: |58 ; CHECK: bb.0.entry:59 bb.0.entry:60 successors: %bb.1, %bb.361 62 $eax = MOV32rm $rdi, 1, _, 0, _63 ; CHECK: CMP32ri8 $eax, 1064 ; CHECK-NEXT: JCC_1 %bb.2, 1565 CMP32ri8 $eax, 10, implicit-def $eflags66 JCC_1 %bb.3, 15, implicit $eflags67 68 bb.1:69 $eax = MOV32r0 implicit-def $eflags70 71 bb.3:72 RET64 $eax73...74