brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · f718328 Raw
92 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -run-pass=aarch64-mi-peephole-opt -o - -mtriple=aarch64-unknown-linux -verify-machineinstrs %s | FileCheck %s3---4name: copy_fpr128_gpr325body: |6  bb.0:7    liveins: $q08    ; CHECK-LABEL: name: copy_fpr128_gpr329    ; CHECK: liveins: $q010    ; CHECK-NEXT: {{  $}}11    ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr128 = COPY $q012    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr32 = COPY [[COPY]].ssub13    ; CHECK-NEXT: [[FMOVSWr:%[0-9]+]]:gpr32 = FMOVSWr [[COPY1]]14    %0:fpr128 = COPY $q015    %1:gpr32 = COPY %0.ssub:fpr12816    %2:gpr32 = ORRWrs $wzr, killed %1:gpr32, 017...18---19name: copy_fpr32_gpr3220body: |21  bb.0:22    liveins: $s023    ; CHECK-LABEL: name: copy_fpr32_gpr3224    ; CHECK: liveins: $s025    ; CHECK-NEXT: {{  $}}26    ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr32 = COPY $s027    ; CHECK-NEXT: [[FMOVSWr:%[0-9]+]]:gpr32 = FMOVSWr [[COPY]]28    %0:fpr32 = COPY $s029    %1:gpr32 = COPY %0:fpr3230    %2:gpr32 = ORRWrs $wzr, killed %1:gpr32, 031...32---33name: copy_zpr_gpr3234body: |35  bb.0:36    liveins: $z037    ; CHECK-LABEL: name: copy_zpr_gpr3238    ; CHECK: liveins: $z039    ; CHECK-NEXT: {{  $}}40    ; CHECK-NEXT: [[COPY:%[0-9]+]]:zpr = COPY $z041    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr32 = COPY [[COPY]].ssub42    ; CHECK-NEXT: [[FMOVSWr:%[0-9]+]]:gpr32 = FMOVSWr [[COPY1]]43    %0:zpr = COPY $z044    %1:gpr32 = COPY %0.ssub:zpr45    %2:gpr32 = ORRWrs $wzr, killed %1:gpr32, 046...47---48name: copy_multiple_uses49tracksRegLiveness: true50body: |51  ; CHECK-LABEL: name: copy_multiple_uses52  ; CHECK: bb.0.entry:53  ; CHECK-NEXT:   successors: %bb.1(0x80000000)54  ; CHECK-NEXT:   liveins: $w0, $q055  ; CHECK-NEXT: {{  $}}56  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:fpr128 = COPY $q057  ; CHECK-NEXT:   [[COPY1:%[0-9]+]]:gpr32 = COPY $w058  ; CHECK-NEXT:   [[COPY2:%[0-9]+]]:gpr32sp = COPY $w059  ; CHECK-NEXT:   B %bb.160  ; CHECK-NEXT: {{  $}}61  ; CHECK-NEXT: bb.1:62  ; CHECK-NEXT:   successors: %bb.1(0x40000000), %bb.2(0x40000000)63  ; CHECK-NEXT: {{  $}}64  ; CHECK-NEXT:   [[SUBSWri:%[0-9]+]]:gpr32 = SUBSWri [[COPY2]], 1, 0, implicit-def $nzcv65  ; CHECK-NEXT:   [[COPY3:%[0-9]+]]:fpr32 = COPY [[COPY]].ssub66  ; CHECK-NEXT:   [[FMOVSWr:%[0-9]+]]:gpr32 = FMOVSWr [[COPY3]]67  ; CHECK-NEXT:   [[ADDWrr:%[0-9]+]]:gpr32 = ADDWrr [[FMOVSWr]], [[SUBSWri]]68  ; CHECK-NEXT:   Bcc 2, %bb.1, implicit $nzcv69  ; CHECK-NEXT:   B %bb.270  ; CHECK-NEXT: {{  $}}71  ; CHECK-NEXT: bb.2:72  ; CHECK-NEXT:   $w0 = COPY [[ADDWrr]]73  ; CHECK-NEXT:   RET_ReallyLR implicit $w074  bb.0.entry:75    liveins: $w0, $q076    %0:fpr128 = COPY $q077    %1:gpr32 = COPY $w078    %6:gpr32sp = COPY $w079    B %bb.180 81  bb.1:82    %7:gpr32 = SUBSWri %6, 1, 0, implicit-def $nzcv83    %2:gpr32 = COPY %0.ssub:fpr12884    %3:gpr32 = ORRWrs $wzr, %2:gpr32, 085    %5:gpr32 = ADDWrr %2:gpr32, %7:gpr3286    Bcc 2, %bb.1, implicit $nzcv87    B %bb.288 89  bb.2:90    $w0 = COPY %591    RET_ReallyLR implicit $w092