90 lines
2.5 KiB
YAML
90 lines
2.5 KiB
YAML
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 3
|
|
# RUN: llc -mtriple=riscv64 -mattr='+d,+zfa,+v' -verify-machineinstrs -run-pass=riscv-opt-w-instrs %s -o - | FileCheck %s
|
|
|
|
---
|
|
name: fcvtmod_w_d
|
|
tracksRegLiveness: true
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: $x10
|
|
|
|
; CHECK-LABEL: name: fcvtmod_w_d
|
|
; CHECK: liveins: $x10
|
|
; CHECK-NEXT: {{ $}}
|
|
; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr64 = COPY $x10
|
|
; CHECK-NEXT: [[FCVTMOD_W_D:%[0-9]+]]:gpr = nofpexcept FCVTMOD_W_D [[COPY]], 1
|
|
; CHECK-NEXT: $x10 = COPY [[FCVTMOD_W_D]]
|
|
; CHECK-NEXT: PseudoRET
|
|
%0:fpr64 = COPY $x10
|
|
|
|
%1:gpr = nofpexcept FCVTMOD_W_D %0, 1
|
|
%2:gpr = ADDIW %1, 0
|
|
$x10 = COPY %2
|
|
PseudoRET
|
|
...
|
|
|
|
---
|
|
name: physreg
|
|
tracksRegLiveness: true
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: $x10, $x11
|
|
|
|
; CHECK-LABEL: name: physreg
|
|
; CHECK: liveins: $x10, $x11
|
|
; CHECK-NEXT: {{ $}}
|
|
; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr = COPY $x10
|
|
; CHECK-NEXT: [[ADDIW:%[0-9]+]]:gpr = ADDIW [[COPY]], 0
|
|
; CHECK-NEXT: $x10 = COPY [[ADDIW]]
|
|
; CHECK-NEXT: PseudoRET
|
|
%0:gpr = COPY $x10
|
|
%1:gpr = ADDIW %0, 0
|
|
$x10 = COPY %1
|
|
PseudoRET
|
|
...
|
|
---
|
|
name: vfirst
|
|
tracksRegLiveness: true
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: $x10, $v8
|
|
|
|
; CHECK-LABEL: name: vfirst
|
|
; CHECK: liveins: $x10, $v8
|
|
; CHECK-NEXT: {{ $}}
|
|
; CHECK-NEXT: [[COPY:%[0-9]+]]:vr = COPY $v8
|
|
; CHECK-NEXT: [[COPY1:%[0-9]+]]:gprnox0 = COPY $x10
|
|
; CHECK-NEXT: [[PseudoVFIRST_M_B1_:%[0-9]+]]:gpr = PseudoVFIRST_M_B1 [[COPY]], [[COPY1]], 0 /* e8 */
|
|
; CHECK-NEXT: $x11 = COPY [[PseudoVFIRST_M_B1_]]
|
|
; CHECK-NEXT: PseudoRET
|
|
%0:vr = COPY $v8
|
|
%1:gprnox0 = COPY $x10
|
|
|
|
%2:gpr = PseudoVFIRST_M_B1 %0:vr, %1:gprnox0, 0
|
|
%3:gpr = ADDIW %2, 0
|
|
$x11 = COPY %3
|
|
PseudoRET
|
|
...
|
|
---
|
|
name: vcpop
|
|
tracksRegLiveness: true
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: $x10, $v8
|
|
|
|
; CHECK-LABEL: name: vcpop
|
|
; CHECK: liveins: $x10, $v8
|
|
; CHECK-NEXT: {{ $}}
|
|
; CHECK-NEXT: [[COPY:%[0-9]+]]:vr = COPY $v8
|
|
; CHECK-NEXT: [[COPY1:%[0-9]+]]:gprnox0 = COPY $x10
|
|
; CHECK-NEXT: [[PseudoVCPOP_M_B1_:%[0-9]+]]:gpr = PseudoVCPOP_M_B1 [[COPY]], [[COPY1]], 0 /* e8 */
|
|
; CHECK-NEXT: $x11 = COPY [[PseudoVCPOP_M_B1_]]
|
|
; CHECK-NEXT: PseudoRET
|
|
%0:vr = COPY $v8
|
|
%1:gprnox0 = COPY $x10
|
|
|
|
%2:gpr = PseudoVCPOP_M_B1 %0:vr, %1:gprnox0, 0
|
|
%3:gpr = ADDIW %2, 0
|
|
$x11 = COPY %3
|
|
PseudoRET
|
|
...
|