[LLVM][IR] Use splat syntax when printing ConstantExpr based splats. (#116856)
[llvm-project.git] / llvm / test / CodeGen / RISCV / GlobalISel / regbankselect / store-rv32.mir
blob544c3bb06a106e59cc24c361e07f7e230b968bc5
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=riscv32 -run-pass=regbankselect \
3 # RUN:   -simplify-mir -verify-machineinstrs %s \
4 # RUN:   -o - | FileCheck -check-prefix=RV32I %s
6 ---
7 name:            store_i8
8 legalized:       true
9 tracksRegLiveness: true
10 body:             |
11   bb.0:
12     liveins: $x10, $x11
14     ; RV32I-LABEL: name: store_i8
15     ; RV32I: liveins: $x10, $x11
16     ; RV32I-NEXT: {{  $}}
17     ; RV32I-NEXT: [[COPY:%[0-9]+]]:gprb(s32) = COPY $x10
18     ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x11
19     ; RV32I-NEXT: G_STORE [[COPY]](s32), [[COPY1]](p0) :: (store (s8))
20     ; RV32I-NEXT: PseudoRET
21     %2:_(s32) = COPY $x10
22     %1:_(p0) = COPY $x11
23     G_STORE %2(s32), %1(p0) :: (store (s8))
24     PseudoRET
26 ...
27 ---
28 name:            store_i16
29 legalized:       true
30 tracksRegLiveness: true
31 body:             |
32   bb.0:
33     liveins: $x10, $x11
35     ; RV32I-LABEL: name: store_i16
36     ; RV32I: liveins: $x10, $x11
37     ; RV32I-NEXT: {{  $}}
38     ; RV32I-NEXT: [[COPY:%[0-9]+]]:gprb(s32) = COPY $x10
39     ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x11
40     ; RV32I-NEXT: G_STORE [[COPY]](s32), [[COPY1]](p0) :: (store (s16))
41     ; RV32I-NEXT: PseudoRET
42     %2:_(s32) = COPY $x10
43     %1:_(p0) = COPY $x11
44     G_STORE %2(s32), %1(p0) :: (store (s16))
45     PseudoRET
47 ...
48 ---
49 name:            store_i32
50 legalized:       true
51 tracksRegLiveness: true
52 body:             |
53   bb.0:
54     liveins: $x10, $x11
56     ; RV32I-LABEL: name: store_i32
57     ; RV32I: liveins: $x10, $x11
58     ; RV32I-NEXT: {{  $}}
59     ; RV32I-NEXT: [[COPY:%[0-9]+]]:gprb(s32) = COPY $x10
60     ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x11
61     ; RV32I-NEXT: G_STORE [[COPY]](s32), [[COPY1]](p0) :: (store (s32))
62     ; RV32I-NEXT: PseudoRET
63     %0:_(s32) = COPY $x10
64     %1:_(p0) = COPY $x11
65     G_STORE %0(s32), %1(p0) :: (store (s32))
66     PseudoRET
68 ...
69 ---
70 name:            store_ptr
71 legalized:       true
72 tracksRegLiveness: true
73 body:             |
74   bb.0:
75     liveins: $x10, $x11
77     ; RV32I-LABEL: name: store_ptr
78     ; RV32I: liveins: $x10, $x11
79     ; RV32I-NEXT: {{  $}}
80     ; RV32I-NEXT: [[COPY:%[0-9]+]]:gprb(p0) = COPY $x10
81     ; RV32I-NEXT: [[COPY1:%[0-9]+]]:gprb(p0) = COPY $x11
82     ; RV32I-NEXT: G_STORE [[COPY]](p0), [[COPY1]](p0) :: (store (p0), align 8)
83     ; RV32I-NEXT: PseudoRET
84     %0:_(p0) = COPY $x10
85     %1:_(p0) = COPY $x11
86     G_STORE %0(p0), %1(p0) :: (store (p0), align 8)
87     PseudoRET
89 ...