[NFC][Py Reformat] Reformat python files in llvm
[llvm-project.git] / llvm / test / CodeGen / Mips / GlobalISel / legalizer / truncStore_and_aExtLoad.mir
blobe22a44524e222836e224c0be6dfa3a9de38e818a
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS32
3 ---
4 name:            load1_s8_to_load1_s32
5 alignment:       4
6 tracksRegLiveness: true
7 body:             |
8   bb.0:
9     liveins: $a0
11     ; MIPS32-LABEL: name: load1_s8_to_load1_s32
12     ; MIPS32: liveins: $a0
13     ; MIPS32-NEXT: {{  $}}
14     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
15     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load (s8))
16     ; MIPS32-NEXT: $v0 = COPY [[LOAD]](s32)
17     ; MIPS32-NEXT: RetRA implicit $v0
18     %0:_(p0) = COPY $a0
19     %2:_(s32) = G_LOAD %0(p0) :: (load (s8))
20     $v0 = COPY %2(s32)
21     RetRA implicit $v0
23 ...
24 ---
25 name:            load2_s16_to_load2_s32
26 alignment:       4
27 tracksRegLiveness: true
28 body:             |
29   bb.0:
30     liveins: $a0
32     ; MIPS32-LABEL: name: load2_s16_to_load2_s32
33     ; MIPS32: liveins: $a0
34     ; MIPS32-NEXT: {{  $}}
35     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
36     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load (s16))
37     ; MIPS32-NEXT: $v0 = COPY [[LOAD]](s32)
38     ; MIPS32-NEXT: RetRA implicit $v0
39     %0:_(p0) = COPY $a0
40     %2:_(s32) = G_LOAD %0(p0) :: (load (s16))
41     $v0 = COPY %2(s32)
42     RetRA implicit $v0
44 ...
45 ---
46 name:            load_store_i1
47 alignment:       4
48 tracksRegLiveness: true
49 body:             |
50   bb.0:
51     liveins: $a0, $a1
53     ; MIPS32-LABEL: name: load_store_i1
54     ; MIPS32: liveins: $a0, $a1
55     ; MIPS32-NEXT: {{  $}}
56     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
57     ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $a1
58     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY1]](p0) :: (load (s8))
59     ; MIPS32-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
60     ; MIPS32-NEXT: [[AND:%[0-9]+]]:_(s32) = G_AND [[LOAD]], [[C]]
61     ; MIPS32-NEXT: [[AND1:%[0-9]+]]:_(s32) = G_AND [[AND]], [[C]]
62     ; MIPS32-NEXT: G_STORE [[AND1]](s32), [[COPY]](p0) :: (store (s8))
63     ; MIPS32-NEXT: RetRA
64     %0:_(p0) = COPY $a0
65     %1:_(p0) = COPY $a1
66     %2:_(s1) = G_LOAD %1(p0) :: (load (s1))
67     G_STORE %2(s1), %0(p0) :: (store (s1))
68     RetRA
70 ...
71 ---
72 name:            load_store_i8
73 alignment:       4
74 tracksRegLiveness: true
75 body:             |
76   bb.0:
77     liveins: $a0, $a1
79     ; MIPS32-LABEL: name: load_store_i8
80     ; MIPS32: liveins: $a0, $a1
81     ; MIPS32-NEXT: {{  $}}
82     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
83     ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $a1
84     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY1]](p0) :: (load (s8))
85     ; MIPS32-NEXT: G_STORE [[LOAD]](s32), [[COPY]](p0) :: (store (s8))
86     ; MIPS32-NEXT: RetRA
87     %0:_(p0) = COPY $a0
88     %1:_(p0) = COPY $a1
89     %2:_(s8) = G_LOAD %1(p0) :: (load (s8))
90     G_STORE %2(s8), %0(p0) :: (store (s8))
91     RetRA
93 ...
94 ---
95 name:            load_store_i16
96 alignment:       4
97 tracksRegLiveness: true
98 body:             |
99   bb.0:
100     liveins: $a0, $a1
102     ; MIPS32-LABEL: name: load_store_i16
103     ; MIPS32: liveins: $a0, $a1
104     ; MIPS32-NEXT: {{  $}}
105     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
106     ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $a1
107     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY1]](p0) :: (load (s16))
108     ; MIPS32-NEXT: G_STORE [[LOAD]](s32), [[COPY]](p0) :: (store (s16))
109     ; MIPS32-NEXT: RetRA
110     %0:_(p0) = COPY $a0
111     %1:_(p0) = COPY $a1
112     %2:_(s16) = G_LOAD %1(p0) :: (load (s16))
113     G_STORE %2(s16), %0(p0) :: (store (s16))
114     RetRA
118 name:            load_store_i32
119 alignment:       4
120 tracksRegLiveness: true
121 body:             |
122   bb.0:
123     liveins: $a0, $a1
125     ; MIPS32-LABEL: name: load_store_i32
126     ; MIPS32: liveins: $a0, $a1
127     ; MIPS32-NEXT: {{  $}}
128     ; MIPS32-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
129     ; MIPS32-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $a1
130     ; MIPS32-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY1]](p0) :: (load (s32))
131     ; MIPS32-NEXT: G_STORE [[LOAD]](s32), [[COPY]](p0) :: (store (s32))
132     ; MIPS32-NEXT: RetRA
133     %0:_(p0) = COPY $a0
134     %1:_(p0) = COPY $a1
135     %2:_(s32) = G_LOAD %1(p0) :: (load (s32))
136     G_STORE %2(s32), %0(p0) :: (store (s32))
137     RetRA