brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · ee7bf18 Raw
119 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=x86_64-linux -run-pass=block-placement -o - %s | FileCheck %s3 4---5# check loop bb.7 is not merged with bb.10, bb.136# check loop bb.9 is not merged with bb.127 8name:            foo9body:             |10  ; CHECK-LABEL: name: foo11  ; CHECK: bb.0:12  ; CHECK:   successors: %bb.1(0x40000000), %bb.2(0x40000000)13  ; CHECK:   TEST8ri $dl, 1, implicit-def $eflags, implicit killed $edx14  ; CHECK:   JCC_1 %bb.1, 5, implicit $eflags15  ; CHECK: bb.2:16  ; CHECK:   successors: %bb.1(0x30000000), %bb.3(0x50000000)17  ; CHECK:   $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))18  ; CHECK:   TEST64rr $rax, $rax, implicit-def $eflags19  ; CHECK:   JCC_1 %bb.1, 4, implicit $eflags20  ; CHECK: bb.3:21  ; CHECK:   successors: %bb.6(0x30000000), %bb.4(0x50000000)22  ; CHECK:   CMP64mi32 killed $rax, 1, $noreg, 8, $noreg, 0, implicit-def $eflags :: (load (s64))23  ; CHECK:   JCC_1 %bb.6, 4, implicit $eflags24  ; CHECK: bb.4:25  ; CHECK:   $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags26  ; CHECK:   dead $eax = XOR32rr undef $eax, undef $eax, implicit-def dead $eflags, implicit-def $al27  ; CHECK:   RET64 $eax28  ; CHECK: bb.6:29  ; CHECK:   successors: %bb.1(0x30000000), %bb.7(0x50000000)30  ; CHECK:   $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))31  ; CHECK:   TEST64rr $rax, $rax, implicit-def $eflags32  ; CHECK:   JCC_1 %bb.1, 4, implicit $eflags33  ; CHECK: bb.7 (align 16):34  ; CHECK:   successors: %bb.8(0x71555555), %bb.4(0x0eaaaaab)35  ; CHECK:   CMP64mi32 killed $rax, 1, $noreg, 8, $noreg, 0, implicit-def $eflags :: (load (s64)), (load (s64))36  ; CHECK:   JCC_1 %bb.4, 5, implicit $eflags37  ; CHECK: bb.8:38  ; CHECK:   successors: %bb.1(0x04000000), %bb.7(0x7c000000)39  ; CHECK:   $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))40  ; CHECK:   TEST64rr $rax, $rax, implicit-def $eflags41  ; CHECK:   JCC_1 %bb.7, 5, implicit $eflags42  ; CHECK: bb.1:43  ; CHECK:   $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags44  ; CHECK:   RET64 $eax45  bb.0:46    successors: %bb.1(0x40000000), %bb.7(0x40000000)47 48    TEST8ri $dl, 1, implicit-def $eflags, implicit killed $edx49    JCC_1 %bb.7, 4, implicit $eflags50 51  bb.1:52    successors: %bb.16(0x80000000)53 54    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags55    JMP_1 %bb.1656 57  bb.7:58    successors: %bb.8(0x30000000), %bb.9(0x50000000)59 60    $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))61    TEST64rr $rax, $rax, implicit-def $eflags62    JCC_1 %bb.9, 5, implicit killed $eflags63 64  bb.8:65    successors: %bb.16(0x80000000)66 67    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags68    JMP_1 %bb.1669 70  bb.9:71    successors: %bb.10(0x30000000), %bb.15(0x50000000)72 73    CMP64mi32 killed $rax, 1, $noreg, 8, $noreg, 0, implicit-def $eflags :: (load (s64))74    JCC_1 %bb.15, 5, implicit $eflags75 76  bb.10:77    successors: %bb.11(0x30000000), %bb.12(0x50000000)78 79    $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))80    TEST64rr $rax, $rax, implicit-def $eflags81    JCC_1 %bb.12, 5, implicit $eflags82 83  bb.11:84    successors: %bb.16(0x80000000)85 86    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags87    JMP_1 %bb.1688 89  bb.12:90    successors: %bb.13(0x71555555), %bb.15(0x0eaaaaab)91 92    CMP64mi32 killed $rax, 1, $noreg, 8, $noreg, 0, implicit-def $eflags :: (load (s64)), (load (s64))93    JCC_1 %bb.15, 5, implicit $eflags94 95  bb.13:96    successors: %bb.14(0x04000000), %bb.12(0x7c000000)97 98    $rax = MOV64rm $r14, 1, $noreg, 0, $noreg :: (load (s64))99    TEST64rr $rax, $rax, implicit-def $eflags100    JCC_1 %bb.12, 5, implicit $eflags101 102  bb.14:103    successors: %bb.16(0x80000000)104 105    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags106    JMP_1 %bb.16107 108  bb.15:109    successors: %bb.16(0x80000000)110 111    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags112    dead $eax = XOR32rr undef $eax, undef $eax, implicit-def dead $eflags, implicit-def $al113 114  bb.16:115 116    RET64 $eax117 118...119