brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · b7147d4 Raw
79 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple thumbv7-apple-ios -run-pass none -o - %s | FileCheck %s3# This test ensures that the MIR parser parses the bundled machine instructions4# and 'internal' register flags correctly.5 6--- |7 8  define i32 @test1(i32 %a) {9  entry:10    %cmp = icmp sgt i32 %a, -7811    %. = zext i1 %cmp to i3212    ret i32 %.13  }14 15  define i32 @test2(i32 %a) {16  entry:17    %cmp = icmp sgt i32 %a, -7818    %. = zext i1 %cmp to i3219    ret i32 %.20  }21 22...23---24name:            test125tracksRegLiveness: true26liveins:27  - { reg: '$r0' }28body: |29  bb.0.entry:30    liveins: $r031    ; CHECK-LABEL: name: test132    ; CHECK: liveins: $r033    ; CHECK: $r1 = t2MOVi 0, 14 /* CC::al */, $noreg, $noreg34    ; CHECK: t2CMNri killed $r0, 78, 14 /* CC::al */, $noreg, implicit-def $cpsr35    ; CHECK: BUNDLE implicit-def dead $itstate, implicit-def $r1, implicit killed $cpsr {36    ; CHECK:   t2IT 12, 8, implicit-def $itstate37    ; CHECK:   $r1 = t2MOVi 1, 12 /* CC::gt */, killed $cpsr, $noreg, implicit internal killed $itstate38    ; CHECK: }39    ; CHECK: $r0 = tMOVr killed $r1, 14 /* CC::al */, $noreg40    ; CHECK: tBX_RET 14 /* CC::al */, $noreg, implicit killed $r041    $r1 = t2MOVi 0, 14, _, _42    t2CMNri killed $r0, 78, 14, _, implicit-def $cpsr43    BUNDLE implicit-def dead $itstate, implicit-def $r1, implicit killed $cpsr {44      t2IT 12, 8, implicit-def $itstate45      $r1 = t2MOVi 1, 12, killed $cpsr, _, implicit internal killed $itstate46    }47    $r0 = tMOVr killed $r1, 14, _48    tBX_RET 14, _, implicit killed $r049...50---51name:            test252tracksRegLiveness: true53liveins:54  - { reg: '$r0' }55body: |56  bb.0.entry:57    liveins: $r058 59    ; Verify that the next machine instruction can be on the same line as60    ; '{' or '}'.61 62    ; CHECK-LABEL: name: test263    ; CHECK: liveins: $r064    ; CHECK: $r1 = t2MOVi 0, 14 /* CC::al */, $noreg, $noreg65    ; CHECK: t2CMNri killed $r0, 78, 14 /* CC::al */, $noreg, implicit-def $cpsr66    ; CHECK: BUNDLE implicit-def dead $itstate, implicit-def $r1, implicit killed $cpsr {67    ; CHECK:   t2IT 12, 8, implicit-def $itstate68    ; CHECK:   $r1 = t2MOVi 1, 12 /* CC::gt */, killed $cpsr, $noreg, implicit internal killed $itstate69    ; CHECK: }70    ; CHECK: $r0 = tMOVr killed $r1, 14 /* CC::al */, $noreg71    ; CHECK: tBX_RET 14 /* CC::al */, $noreg, implicit killed $r072    $r1 = t2MOVi 0, 14, _, _73    t2CMNri killed $r0, 78, 14, _, implicit-def $cpsr74    BUNDLE implicit-def dead $itstate, implicit-def $r1, implicit killed $cpsr { t2IT 12, 8, implicit-def $itstate75      $r1 = t2MOVi 1, 12, killed $cpsr, _, internal implicit killed $itstate76    } $r0 = tMOVr killed $r1, 14, _77    tBX_RET 14, _, implicit killed $r078...79