114 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=riscv64 -run-pass=regbankselect \3# RUN: -simplify-mir -verify-machineinstrs %s \4# RUN: -o - | FileCheck -check-prefix=RV64I %s5 6---7name: store_i88legalized: true9body: |10 bb.0:11 liveins: $x10, $x1112 13 ; RV64I-LABEL: name: store_i814 ; RV64I: liveins: $x10, $x1115 ; RV64I-NEXT: {{ $}}16 ; RV64I-NEXT: [[COPY:%[0-9]+]]:gprb(s64) = COPY $x1017 ; RV64I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x1118 ; RV64I-NEXT: [[TRUNC:%[0-9]+]]:gprb(s32) = G_TRUNC [[COPY]](s64)19 ; RV64I-NEXT: G_STORE [[TRUNC]](s32), [[COPY1]](p0) :: (store (s8))20 ; RV64I-NEXT: PseudoRET21 %2:_(s64) = COPY $x1022 %1:_(p0) = COPY $x1123 %3:_(s32) = G_TRUNC %2(s64)24 G_STORE %3(s32), %1(p0) :: (store (s8))25 PseudoRET26 27...28---29name: store_i1630legalized: true31body: |32 bb.0:33 liveins: $x10, $x1134 35 ; RV64I-LABEL: name: store_i1636 ; RV64I: liveins: $x10, $x1137 ; RV64I-NEXT: {{ $}}38 ; RV64I-NEXT: [[COPY:%[0-9]+]]:gprb(s64) = COPY $x1039 ; RV64I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x1140 ; RV64I-NEXT: [[TRUNC:%[0-9]+]]:gprb(s32) = G_TRUNC [[COPY]](s64)41 ; RV64I-NEXT: G_STORE [[TRUNC]](s32), [[COPY1]](p0) :: (store (s16))42 ; RV64I-NEXT: PseudoRET43 %2:_(s64) = COPY $x1044 %1:_(p0) = COPY $x1145 %3:_(s32) = G_TRUNC %2(s64)46 G_STORE %3(s32), %1(p0) :: (store (s16))47 PseudoRET48 49...50---51name: store_i3252legalized: true53body: |54 bb.0:55 liveins: $x10, $x1156 57 ; RV64I-LABEL: name: store_i3258 ; RV64I: liveins: $x10, $x1159 ; RV64I-NEXT: {{ $}}60 ; RV64I-NEXT: [[COPY:%[0-9]+]]:gprb(s64) = COPY $x1061 ; RV64I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x1162 ; RV64I-NEXT: [[TRUNC:%[0-9]+]]:gprb(s32) = G_TRUNC [[COPY]](s64)63 ; RV64I-NEXT: G_STORE [[TRUNC]](s32), [[COPY1]](p0) :: (store (s32))64 ; RV64I-NEXT: PseudoRET65 %2:_(s64) = COPY $x1066 %1:_(p0) = COPY $x1167 %3:_(s32) = G_TRUNC %2(s64)68 G_STORE %3(s32), %1(p0) :: (store (s32))69 PseudoRET70 71...72---73name: store_i6474legalized: true75tracksRegLiveness: true76body: |77 bb.0:78 liveins: $x10, $x1179 80 ; RV64I-LABEL: name: store_i6481 ; RV64I: liveins: $x10, $x1182 ; RV64I-NEXT: {{ $}}83 ; RV64I-NEXT: [[COPY:%[0-9]+]]:gprb(s64) = COPY $x1084 ; RV64I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x1185 ; RV64I-NEXT: G_STORE [[COPY]](s64), [[COPY1]](p0) :: (store (s64))86 ; RV64I-NEXT: PseudoRET87 %0:_(s64) = COPY $x1088 %1:_(p0) = COPY $x1189 G_STORE %0(s64), %1(p0) :: (store (s64))90 PseudoRET91 92...93---94name: store_ptr95legalized: true96tracksRegLiveness: true97body: |98 bb.0:99 liveins: $x10, $x11100 101 ; RV64I-LABEL: name: store_ptr102 ; RV64I: liveins: $x10, $x11103 ; RV64I-NEXT: {{ $}}104 ; RV64I-NEXT: [[COPY:%[0-9]+]]:gprb(p0) = COPY $x10105 ; RV64I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x11106 ; RV64I-NEXT: G_STORE [[COPY]](p0), [[COPY1]](p0) :: (store (p0))107 ; RV64I-NEXT: PseudoRET108 %0:_(p0) = COPY $x10109 %1:_(p0) = COPY $x11110 G_STORE %0(p0), %1(p0) :: (store (p0))111 PseudoRET112 113...114