brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.4 KiB · 2680d02 Raw
64 lines · plain
1# RUN: llc -o - %s -mtriple=s390x-linux-gnu -mcpu=zEC12 -verify-machineinstrs \2# RUN:   -start-before=greedy | FileCheck %s -check-prefix=CHECK3# RUN: llc -o - %s -mtriple=s390x-linux-gnu -mcpu=z16 -verify-machineinstrs \4# RUN:   -start-before=greedy | FileCheck %s -check-prefix=VECTOR5 6# Test spilling / reloading fp16bit virtual registers.7 8---9name: fun010tracksRegLiveness: true11body:             |12  bb.0:13    liveins: $f0h, $f2h, $f4h14 15    ; CHECK-LABEL: fun0:16    ; CHECK:      aghi %r15, -24017    ; CHECK:      ste %f4, 172(%r15)          # 4-byte Spill18    ; CHECK-NEXT: ste %f2, 164(%r15)          # 4-byte Spill19    ; CHECK-NEXT: ste %f0, 168(%r15)          # 4-byte Spill20    ; CHECK-NEXT: #APP21    ; CHECK-NEXT: #NO_APP22    ; CHECK-NEXT: le %f0, 164(%r15)           # 4-byte Reload23    ; CHECK:      le %f0, 168(%r15)           # 4-byte Reload24    ; CHECK:      le %f0, 172(%r15)           # 4-byte Reload25 26    ; VECTOR-LABEL: fun0:27    ; VECTOR:      aghi %r15, -23228    ; VECTOR:      vsteh %v4, 166(%r15), 0     # 2-byte Spill29    ; VECTOR-NEXT: vsteh %v2, 162(%r15), 0     # 2-byte Spill30    ; VECTOR-NEXT: vsteh %v0, 164(%r15), 0     # 2-byte Spill31    ; VECTOR-NEXT: #APP32    ; VECTOR-NEXT: #NO_APP33    ; VECTOR-NEXT: vlreph %v0, 162(%r15)       # 2-byte Reload34    ; VECTOR:      vlreph %v0, 164(%r15)       # 2-byte Reload35    ; VECTOR:      vlreph %v0, 166(%r15)       # 2-byte Reload36 37    %2:fp16bit = COPY $f4h38    %1:fp16bit = COPY $f2h39    %0:fp16bit = COPY $f0h40    INLINEASM &"", 1, 12, implicit-def dead early-clobber $f0d, 12, implicit-def dead early-clobber $f1d, 12, implicit-def dead early-clobber $f2d, 12, implicit-def dead early-clobber $f3d, 12, implicit-def dead early-clobber $f4d, 12, implicit-def dead early-clobber $f5d, 12, implicit-def dead early-clobber $f6d, 12, implicit-def dead early-clobber $f7d, 12, implicit-def dead early-clobber $f8d, 12, implicit-def dead early-clobber $f9d, 12, implicit-def dead early-clobber $f10d, 12, implicit-def dead early-clobber $f11d, 12, implicit-def dead early-clobber $f12d, 12, implicit-def dead early-clobber $f13d, 12, implicit-def dead early-clobber $f14d, 12, implicit-def dead early-clobber $f14d, 12, implicit-def dead early-clobber $f15d41    $f0h = COPY %142    CallBRASL &__extendhfsf2, $f0h, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0s43    %3:fp32bit = COPY $f0s44    $f0h = COPY %045    CallBRASL &__extendhfsf2, $f0h, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0s46    %5:fp32bit = COPY $f0s47    %5:fp32bit = nofpexcept AEBR %5, %3, implicit-def dead $cc, implicit $fpc48    $f0s = COPY %549    CallBRASL &__truncsfhf2, $f0s, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0h50    %6:fp16bit = COPY $f0h51    $f0h = COPY %652    CallBRASL &__extendhfsf2, $f0h, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0s53    %7:fp32bit = COPY $f0s54    $f0h = COPY %255    CallBRASL &__extendhfsf2, $f0h, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0s56    %9:fp32bit = COPY $f0s57    %9:fp32bit = nofpexcept AEBR %9, %7, implicit-def dead $cc, implicit $fpc58    $f0s = COPY %959    CallBRASL &__truncsfhf2, $f0s, csr_systemz_elf, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $f0h60    %10:fp16bit = COPY $f0h61    $f0h = COPY %1062    Return implicit $f0h63...64