@@ -12,11 +12,12 @@ body: |
12
12
13
13
; CHECK-LABEL: name: v16s8_gpr
14
14
; CHECK: liveins: $q1, $w0
15
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
16
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
17
- ; CHECK: [[INSvi8gpr:%[0-9]+]]:fpr128 = INSvi8gpr [[COPY1]], 1, [[COPY]]
18
- ; CHECK: $q0 = COPY [[INSvi8gpr]]
19
- ; CHECK: RET_ReallyLR implicit $q0
15
+ ; CHECK-NEXT: {{ $}}
16
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
17
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
18
+ ; CHECK-NEXT: [[INSvi8gpr:%[0-9]+]]:fpr128 = INSvi8gpr [[COPY1]], 1, [[COPY]]
19
+ ; CHECK-NEXT: $q0 = COPY [[INSvi8gpr]]
20
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
20
21
%0:gpr(s32) = COPY $w0
21
22
%trunc:gpr(s8) = G_TRUNC %0
22
23
%1:fpr(<16 x s8>) = COPY $q1
@@ -38,14 +39,15 @@ body: |
38
39
39
40
; CHECK-LABEL: name: v8s8_gpr
40
41
; CHECK: liveins: $d0, $w0
41
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
42
- ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
43
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
44
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
45
- ; CHECK: [[INSvi8gpr:%[0-9]+]]:fpr128 = INSvi8gpr [[INSERT_SUBREG]], 1, [[COPY]]
46
- ; CHECK: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi8gpr]].dsub
47
- ; CHECK: $d0 = COPY [[COPY2]]
48
- ; CHECK: RET_ReallyLR implicit $d0
42
+ ; CHECK-NEXT: {{ $}}
43
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
44
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
45
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
46
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
47
+ ; CHECK-NEXT: [[INSvi8gpr:%[0-9]+]]:fpr128 = INSvi8gpr [[INSERT_SUBREG]], 1, [[COPY]]
48
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi8gpr]].dsub
49
+ ; CHECK-NEXT: $d0 = COPY [[COPY2]]
50
+ ; CHECK-NEXT: RET_ReallyLR implicit $d0
49
51
%0:gpr(s32) = COPY $w0
50
52
%trunc:gpr(s8) = G_TRUNC %0
51
53
%1:fpr(<8 x s8>) = COPY $d0
@@ -67,11 +69,12 @@ body: |
67
69
68
70
; CHECK-LABEL: name: v8s16_gpr
69
71
; CHECK: liveins: $q1, $w0
70
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
71
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
72
- ; CHECK: [[INSvi16gpr:%[0-9]+]]:fpr128 = INSvi16gpr [[COPY1]], 1, [[COPY]]
73
- ; CHECK: $q0 = COPY [[INSvi16gpr]]
74
- ; CHECK: RET_ReallyLR implicit $q0
72
+ ; CHECK-NEXT: {{ $}}
73
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
74
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
75
+ ; CHECK-NEXT: [[INSvi16gpr:%[0-9]+]]:fpr128 = INSvi16gpr [[COPY1]], 1, [[COPY]]
76
+ ; CHECK-NEXT: $q0 = COPY [[INSvi16gpr]]
77
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
75
78
%0:gpr(s32) = COPY $w0
76
79
%trunc:gpr(s16) = G_TRUNC %0
77
80
%1:fpr(<8 x s16>) = COPY $q1
@@ -93,13 +96,14 @@ body: |
93
96
94
97
; CHECK-LABEL: name: v8s16_fpr
95
98
; CHECK: liveins: $q1, $h0
96
- ; CHECK: [[COPY:%[0-9]+]]:fpr16 = COPY $h0
97
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
98
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
99
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.hsub
100
- ; CHECK: [[INSvi16lane:%[0-9]+]]:fpr128 = INSvi16lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
101
- ; CHECK: $q0 = COPY [[INSvi16lane]]
102
- ; CHECK: RET_ReallyLR implicit $q0
99
+ ; CHECK-NEXT: {{ $}}
100
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr16 = COPY $h0
101
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
102
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
103
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.hsub
104
+ ; CHECK-NEXT: [[INSvi16lane:%[0-9]+]]:fpr128 = INSvi16lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
105
+ ; CHECK-NEXT: $q0 = COPY [[INSvi16lane]]
106
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
103
107
%0:fpr(s16) = COPY $h0
104
108
%1:fpr(<8 x s16>) = COPY $q1
105
109
%3:gpr(s32) = G_CONSTANT i32 1
@@ -120,13 +124,14 @@ body: |
120
124
121
125
; CHECK-LABEL: name: v4s32_fpr
122
126
; CHECK: liveins: $q1, $s0
123
- ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY $s0
124
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
125
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
126
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.ssub
127
- ; CHECK: [[INSvi32lane:%[0-9]+]]:fpr128 = INSvi32lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
128
- ; CHECK: $q0 = COPY [[INSvi32lane]]
129
- ; CHECK: RET_ReallyLR implicit $q0
127
+ ; CHECK-NEXT: {{ $}}
128
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr32 = COPY $s0
129
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
130
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
131
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.ssub
132
+ ; CHECK-NEXT: [[INSvi32lane:%[0-9]+]]:fpr128 = INSvi32lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
133
+ ; CHECK-NEXT: $q0 = COPY [[INSvi32lane]]
134
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
130
135
%0:fpr(s32) = COPY $s0
131
136
%1:fpr(<4 x s32>) = COPY $q1
132
137
%3:gpr(s32) = G_CONSTANT i32 1
@@ -147,11 +152,12 @@ body: |
147
152
148
153
; CHECK-LABEL: name: v4s32_gpr
149
154
; CHECK: liveins: $q0, $w0
150
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
151
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q0
152
- ; CHECK: [[INSvi32gpr:%[0-9]+]]:fpr128 = INSvi32gpr [[COPY1]], 1, [[COPY]]
153
- ; CHECK: $q0 = COPY [[INSvi32gpr]]
154
- ; CHECK: RET_ReallyLR implicit $q0
155
+ ; CHECK-NEXT: {{ $}}
156
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
157
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q0
158
+ ; CHECK-NEXT: [[INSvi32gpr:%[0-9]+]]:fpr128 = INSvi32gpr [[COPY1]], 1, [[COPY]]
159
+ ; CHECK-NEXT: $q0 = COPY [[INSvi32gpr]]
160
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
155
161
%0:gpr(s32) = COPY $w0
156
162
%1:fpr(<4 x s32>) = COPY $q0
157
163
%3:gpr(s32) = G_CONSTANT i32 1
@@ -172,14 +178,15 @@ body: |
172
178
173
179
; CHECK-LABEL: name: v4s16_gpr
174
180
; CHECK: liveins: $d0, $w0
175
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
176
- ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
177
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
178
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
179
- ; CHECK: [[INSvi16gpr:%[0-9]+]]:fpr128 = INSvi16gpr [[INSERT_SUBREG]], 1, [[COPY]]
180
- ; CHECK: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi16gpr]].dsub
181
- ; CHECK: $d0 = COPY [[COPY2]]
182
- ; CHECK: RET_ReallyLR implicit $d0
181
+ ; CHECK-NEXT: {{ $}}
182
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
183
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
184
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
185
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
186
+ ; CHECK-NEXT: [[INSvi16gpr:%[0-9]+]]:fpr128 = INSvi16gpr [[INSERT_SUBREG]], 1, [[COPY]]
187
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi16gpr]].dsub
188
+ ; CHECK-NEXT: $d0 = COPY [[COPY2]]
189
+ ; CHECK-NEXT: RET_ReallyLR implicit $d0
183
190
%0:gpr(s32) = COPY $w0
184
191
%trunc:gpr(s16) = G_TRUNC %0
185
192
%1:fpr(<4 x s16>) = COPY $d0
@@ -201,13 +208,14 @@ body: |
201
208
202
209
; CHECK-LABEL: name: v2s64_fpr
203
210
; CHECK: liveins: $d0, $q1
204
- ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY $d0
205
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
206
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
207
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.dsub
208
- ; CHECK: [[INSvi64lane:%[0-9]+]]:fpr128 = INSvi64lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
209
- ; CHECK: $q0 = COPY [[INSvi64lane]]
210
- ; CHECK: RET_ReallyLR implicit $q0
211
+ ; CHECK-NEXT: {{ $}}
212
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr64 = COPY $d0
213
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q1
214
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
215
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY]], %subreg.dsub
216
+ ; CHECK-NEXT: [[INSvi64lane:%[0-9]+]]:fpr128 = INSvi64lane [[COPY1]], 1, [[INSERT_SUBREG]], 0
217
+ ; CHECK-NEXT: $q0 = COPY [[INSvi64lane]]
218
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
211
219
%0:fpr(s64) = COPY $d0
212
220
%1:fpr(<2 x s64>) = COPY $q1
213
221
%3:gpr(s32) = G_CONSTANT i32 1
@@ -228,11 +236,12 @@ body: |
228
236
229
237
; CHECK-LABEL: name: v2s64_gpr
230
238
; CHECK: liveins: $q0, $x0
231
- ; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
232
- ; CHECK: [[COPY1:%[0-9]+]]:fpr128 = COPY $q0
233
- ; CHECK: [[INSvi64gpr:%[0-9]+]]:fpr128 = INSvi64gpr [[COPY1]], 0, [[COPY]]
234
- ; CHECK: $q0 = COPY [[INSvi64gpr]]
235
- ; CHECK: RET_ReallyLR implicit $q0
239
+ ; CHECK-NEXT: {{ $}}
240
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
241
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr128 = COPY $q0
242
+ ; CHECK-NEXT: [[INSvi64gpr:%[0-9]+]]:fpr128 = INSvi64gpr [[COPY1]], 0, [[COPY]]
243
+ ; CHECK-NEXT: $q0 = COPY [[INSvi64gpr]]
244
+ ; CHECK-NEXT: RET_ReallyLR implicit $q0
236
245
%0:gpr(s64) = COPY $x0
237
246
%1:fpr(<2 x s64>) = COPY $q0
238
247
%3:gpr(s32) = G_CONSTANT i32 0
@@ -253,16 +262,17 @@ body: |
253
262
254
263
; CHECK-LABEL: name: v2s32_fpr
255
264
; CHECK: liveins: $d1, $s0
256
- ; CHECK: [[COPY:%[0-9]+]]:fpr32 = COPY $s0
257
- ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY $d1
258
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
259
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
260
- ; CHECK: [[DEF1:%[0-9]+]]:fpr128 = IMPLICIT_DEF
261
- ; CHECK: [[INSERT_SUBREG1:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF1]], [[COPY]], %subreg.ssub
262
- ; CHECK: [[INSvi32lane:%[0-9]+]]:fpr128 = INSvi32lane [[INSERT_SUBREG]], 1, [[INSERT_SUBREG1]], 0
263
- ; CHECK: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi32lane]].dsub
264
- ; CHECK: $d0 = COPY [[COPY2]]
265
- ; CHECK: RET_ReallyLR implicit $d0
265
+ ; CHECK-NEXT: {{ $}}
266
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:fpr32 = COPY $s0
267
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr64 = COPY $d1
268
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
269
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
270
+ ; CHECK-NEXT: [[DEF1:%[0-9]+]]:fpr128 = IMPLICIT_DEF
271
+ ; CHECK-NEXT: [[INSERT_SUBREG1:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF1]], [[COPY]], %subreg.ssub
272
+ ; CHECK-NEXT: [[INSvi32lane:%[0-9]+]]:fpr128 = INSvi32lane [[INSERT_SUBREG]], 1, [[INSERT_SUBREG1]], 0
273
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi32lane]].dsub
274
+ ; CHECK-NEXT: $d0 = COPY [[COPY2]]
275
+ ; CHECK-NEXT: RET_ReallyLR implicit $d0
266
276
%0:fpr(s32) = COPY $s0
267
277
%1:fpr(<2 x s32>) = COPY $d1
268
278
%3:gpr(s32) = G_CONSTANT i32 1
@@ -283,14 +293,15 @@ body: |
283
293
284
294
; CHECK-LABEL: name: v2s32_gpr
285
295
; CHECK: liveins: $d0, $w0
286
- ; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
287
- ; CHECK: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
288
- ; CHECK: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
289
- ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
290
- ; CHECK: [[INSvi32gpr:%[0-9]+]]:fpr128 = INSvi32gpr [[INSERT_SUBREG]], 1, [[COPY]]
291
- ; CHECK: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi32gpr]].dsub
292
- ; CHECK: $d0 = COPY [[COPY2]]
293
- ; CHECK: RET_ReallyLR implicit $d0
296
+ ; CHECK-NEXT: {{ $}}
297
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
298
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:fpr64 = COPY $d0
299
+ ; CHECK-NEXT: [[DEF:%[0-9]+]]:fpr128 = IMPLICIT_DEF
300
+ ; CHECK-NEXT: [[INSERT_SUBREG:%[0-9]+]]:fpr128 = INSERT_SUBREG [[DEF]], [[COPY1]], %subreg.dsub
301
+ ; CHECK-NEXT: [[INSvi32gpr:%[0-9]+]]:fpr128 = INSvi32gpr [[INSERT_SUBREG]], 1, [[COPY]]
302
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:fpr64 = COPY [[INSvi32gpr]].dsub
303
+ ; CHECK-NEXT: $d0 = COPY [[COPY2]]
304
+ ; CHECK-NEXT: RET_ReallyLR implicit $d0
294
305
%0:gpr(s32) = COPY $w0
295
306
%1:fpr(<2 x s32>) = COPY $d0
296
307
%3:gpr(s32) = G_CONSTANT i32 1
0 commit comments