@@ -24,8 +24,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
24
24
; RV32-BITS-UNKNOWN-NEXT: vrsub.vx v9, v9, a0
25
25
; RV32-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, mf4, ta, ma
26
26
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v10, v8, v9
27
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v10, 1
28
- ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
27
+ ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v10, 0
29
28
; RV32-BITS-UNKNOWN-NEXT: ret
30
29
;
31
30
; RV32-BITS-256-LABEL: reverse_nxv2i1:
@@ -39,8 +38,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
39
38
; RV32-BITS-256-NEXT: vid.v v9
40
39
; RV32-BITS-256-NEXT: vrsub.vx v9, v9, a0
41
40
; RV32-BITS-256-NEXT: vrgather.vv v10, v8, v9
42
- ; RV32-BITS-256-NEXT: vand.vi v8, v10, 1
43
- ; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
41
+ ; RV32-BITS-256-NEXT: vmsne.vi v0, v10, 0
44
42
; RV32-BITS-256-NEXT: ret
45
43
;
46
44
; RV32-BITS-512-LABEL: reverse_nxv2i1:
@@ -54,8 +52,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
54
52
; RV32-BITS-512-NEXT: vid.v v9
55
53
; RV32-BITS-512-NEXT: vrsub.vx v9, v9, a0
56
54
; RV32-BITS-512-NEXT: vrgather.vv v10, v8, v9
57
- ; RV32-BITS-512-NEXT: vand.vi v8, v10, 1
58
- ; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
55
+ ; RV32-BITS-512-NEXT: vmsne.vi v0, v10, 0
59
56
; RV32-BITS-512-NEXT: ret
60
57
;
61
58
; RV64-BITS-UNKNOWN-LABEL: reverse_nxv2i1:
@@ -71,8 +68,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
71
68
; RV64-BITS-UNKNOWN-NEXT: vrsub.vx v9, v9, a0
72
69
; RV64-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, mf4, ta, ma
73
70
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v10, v8, v9
74
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v10, 1
75
- ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
71
+ ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v10, 0
76
72
; RV64-BITS-UNKNOWN-NEXT: ret
77
73
;
78
74
; RV64-BITS-256-LABEL: reverse_nxv2i1:
@@ -86,8 +82,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
86
82
; RV64-BITS-256-NEXT: vid.v v9
87
83
; RV64-BITS-256-NEXT: vrsub.vx v9, v9, a0
88
84
; RV64-BITS-256-NEXT: vrgather.vv v10, v8, v9
89
- ; RV64-BITS-256-NEXT: vand.vi v8, v10, 1
90
- ; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
85
+ ; RV64-BITS-256-NEXT: vmsne.vi v0, v10, 0
91
86
; RV64-BITS-256-NEXT: ret
92
87
;
93
88
; RV64-BITS-512-LABEL: reverse_nxv2i1:
@@ -101,8 +96,7 @@ define <vscale x 2 x i1> @reverse_nxv2i1(<vscale x 2 x i1> %a) {
101
96
; RV64-BITS-512-NEXT: vid.v v9
102
97
; RV64-BITS-512-NEXT: vrsub.vx v9, v9, a0
103
98
; RV64-BITS-512-NEXT: vrgather.vv v10, v8, v9
104
- ; RV64-BITS-512-NEXT: vand.vi v8, v10, 1
105
- ; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
99
+ ; RV64-BITS-512-NEXT: vmsne.vi v0, v10, 0
106
100
; RV64-BITS-512-NEXT: ret
107
101
%res = call <vscale x 2 x i1 > @llvm.vector.reverse.nxv2i1 (<vscale x 2 x i1 > %a )
108
102
ret <vscale x 2 x i1 > %res
@@ -122,8 +116,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
122
116
; RV32-BITS-UNKNOWN-NEXT: vrsub.vx v9, v9, a0
123
117
; RV32-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, mf2, ta, ma
124
118
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v10, v8, v9
125
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v10, 1
126
- ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
119
+ ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v10, 0
127
120
; RV32-BITS-UNKNOWN-NEXT: ret
128
121
;
129
122
; RV32-BITS-256-LABEL: reverse_nxv4i1:
@@ -137,8 +130,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
137
130
; RV32-BITS-256-NEXT: vid.v v9
138
131
; RV32-BITS-256-NEXT: vrsub.vx v9, v9, a0
139
132
; RV32-BITS-256-NEXT: vrgather.vv v10, v8, v9
140
- ; RV32-BITS-256-NEXT: vand.vi v8, v10, 1
141
- ; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
133
+ ; RV32-BITS-256-NEXT: vmsne.vi v0, v10, 0
142
134
; RV32-BITS-256-NEXT: ret
143
135
;
144
136
; RV32-BITS-512-LABEL: reverse_nxv4i1:
@@ -152,8 +144,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
152
144
; RV32-BITS-512-NEXT: vid.v v9
153
145
; RV32-BITS-512-NEXT: vrsub.vx v9, v9, a0
154
146
; RV32-BITS-512-NEXT: vrgather.vv v10, v8, v9
155
- ; RV32-BITS-512-NEXT: vand.vi v8, v10, 1
156
- ; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
147
+ ; RV32-BITS-512-NEXT: vmsne.vi v0, v10, 0
157
148
; RV32-BITS-512-NEXT: ret
158
149
;
159
150
; RV64-BITS-UNKNOWN-LABEL: reverse_nxv4i1:
@@ -169,8 +160,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
169
160
; RV64-BITS-UNKNOWN-NEXT: vrsub.vx v9, v9, a0
170
161
; RV64-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, mf2, ta, ma
171
162
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v10, v8, v9
172
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v10, 1
173
- ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
163
+ ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v10, 0
174
164
; RV64-BITS-UNKNOWN-NEXT: ret
175
165
;
176
166
; RV64-BITS-256-LABEL: reverse_nxv4i1:
@@ -184,8 +174,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
184
174
; RV64-BITS-256-NEXT: vid.v v9
185
175
; RV64-BITS-256-NEXT: vrsub.vx v9, v9, a0
186
176
; RV64-BITS-256-NEXT: vrgather.vv v10, v8, v9
187
- ; RV64-BITS-256-NEXT: vand.vi v8, v10, 1
188
- ; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
177
+ ; RV64-BITS-256-NEXT: vmsne.vi v0, v10, 0
189
178
; RV64-BITS-256-NEXT: ret
190
179
;
191
180
; RV64-BITS-512-LABEL: reverse_nxv4i1:
@@ -199,8 +188,7 @@ define <vscale x 4 x i1> @reverse_nxv4i1(<vscale x 4 x i1> %a) {
199
188
; RV64-BITS-512-NEXT: vid.v v9
200
189
; RV64-BITS-512-NEXT: vrsub.vx v9, v9, a0
201
190
; RV64-BITS-512-NEXT: vrgather.vv v10, v8, v9
202
- ; RV64-BITS-512-NEXT: vand.vi v8, v10, 1
203
- ; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
191
+ ; RV64-BITS-512-NEXT: vmsne.vi v0, v10, 0
204
192
; RV64-BITS-512-NEXT: ret
205
193
%res = call <vscale x 4 x i1 > @llvm.vector.reverse.nxv4i1 (<vscale x 4 x i1 > %a )
206
194
ret <vscale x 4 x i1 > %res
@@ -219,8 +207,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
219
207
; RV32-BITS-UNKNOWN-NEXT: vrsub.vx v10, v10, a0
220
208
; RV32-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, m1, ta, ma
221
209
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v8, v10
222
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v9, 1
223
- ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
210
+ ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v9, 0
224
211
; RV32-BITS-UNKNOWN-NEXT: ret
225
212
;
226
213
; RV32-BITS-256-LABEL: reverse_nxv8i1:
@@ -233,8 +220,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
233
220
; RV32-BITS-256-NEXT: vid.v v9
234
221
; RV32-BITS-256-NEXT: vrsub.vx v9, v9, a0
235
222
; RV32-BITS-256-NEXT: vrgather.vv v10, v8, v9
236
- ; RV32-BITS-256-NEXT: vand.vi v8, v10, 1
237
- ; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
223
+ ; RV32-BITS-256-NEXT: vmsne.vi v0, v10, 0
238
224
; RV32-BITS-256-NEXT: ret
239
225
;
240
226
; RV32-BITS-512-LABEL: reverse_nxv8i1:
@@ -247,8 +233,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
247
233
; RV32-BITS-512-NEXT: vid.v v9
248
234
; RV32-BITS-512-NEXT: vrsub.vx v9, v9, a0
249
235
; RV32-BITS-512-NEXT: vrgather.vv v10, v8, v9
250
- ; RV32-BITS-512-NEXT: vand.vi v8, v10, 1
251
- ; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
236
+ ; RV32-BITS-512-NEXT: vmsne.vi v0, v10, 0
252
237
; RV32-BITS-512-NEXT: ret
253
238
;
254
239
; RV64-BITS-UNKNOWN-LABEL: reverse_nxv8i1:
@@ -263,8 +248,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
263
248
; RV64-BITS-UNKNOWN-NEXT: vrsub.vx v10, v10, a0
264
249
; RV64-BITS-UNKNOWN-NEXT: vsetvli zero, zero, e8, m1, ta, ma
265
250
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v8, v10
266
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v9, 1
267
- ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
251
+ ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v9, 0
268
252
; RV64-BITS-UNKNOWN-NEXT: ret
269
253
;
270
254
; RV64-BITS-256-LABEL: reverse_nxv8i1:
@@ -277,8 +261,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
277
261
; RV64-BITS-256-NEXT: vid.v v9
278
262
; RV64-BITS-256-NEXT: vrsub.vx v9, v9, a0
279
263
; RV64-BITS-256-NEXT: vrgather.vv v10, v8, v9
280
- ; RV64-BITS-256-NEXT: vand.vi v8, v10, 1
281
- ; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
264
+ ; RV64-BITS-256-NEXT: vmsne.vi v0, v10, 0
282
265
; RV64-BITS-256-NEXT: ret
283
266
;
284
267
; RV64-BITS-512-LABEL: reverse_nxv8i1:
@@ -291,8 +274,7 @@ define <vscale x 8 x i1> @reverse_nxv8i1(<vscale x 8 x i1> %a) {
291
274
; RV64-BITS-512-NEXT: vid.v v9
292
275
; RV64-BITS-512-NEXT: vrsub.vx v9, v9, a0
293
276
; RV64-BITS-512-NEXT: vrgather.vv v10, v8, v9
294
- ; RV64-BITS-512-NEXT: vand.vi v8, v10, 1
295
- ; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
277
+ ; RV64-BITS-512-NEXT: vmsne.vi v0, v10, 0
296
278
; RV64-BITS-512-NEXT: ret
297
279
%res = call <vscale x 8 x i1 > @llvm.vector.reverse.nxv8i1 (<vscale x 8 x i1 > %a )
298
280
ret <vscale x 8 x i1 > %res
@@ -313,8 +295,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
313
295
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v13, v10, v8
314
296
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v12, v11, v8
315
297
; RV32-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m2, ta, ma
316
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v12, 1
317
- ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
298
+ ; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v12, 0
318
299
; RV32-BITS-UNKNOWN-NEXT: ret
319
300
;
320
301
; RV32-BITS-256-LABEL: reverse_nxv16i1:
@@ -331,8 +312,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
331
312
; RV32-BITS-256-NEXT: vrgather.vv v13, v10, v8
332
313
; RV32-BITS-256-NEXT: vrgather.vv v12, v11, v8
333
314
; RV32-BITS-256-NEXT: vsetvli a0, zero, e8, m2, ta, ma
334
- ; RV32-BITS-256-NEXT: vand.vi v8, v12, 1
335
- ; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
315
+ ; RV32-BITS-256-NEXT: vmsne.vi v0, v12, 0
336
316
; RV32-BITS-256-NEXT: ret
337
317
;
338
318
; RV32-BITS-512-LABEL: reverse_nxv16i1:
@@ -349,8 +329,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
349
329
; RV32-BITS-512-NEXT: vrgather.vv v13, v10, v8
350
330
; RV32-BITS-512-NEXT: vrgather.vv v12, v11, v8
351
331
; RV32-BITS-512-NEXT: vsetvli a0, zero, e8, m2, ta, ma
352
- ; RV32-BITS-512-NEXT: vand.vi v8, v12, 1
353
- ; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
332
+ ; RV32-BITS-512-NEXT: vmsne.vi v0, v12, 0
354
333
; RV32-BITS-512-NEXT: ret
355
334
;
356
335
; RV64-BITS-UNKNOWN-LABEL: reverse_nxv16i1:
@@ -367,8 +346,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
367
346
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v13, v10, v8
368
347
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v12, v11, v8
369
348
; RV64-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m2, ta, ma
370
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v12, 1
371
- ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
349
+ ; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v12, 0
372
350
; RV64-BITS-UNKNOWN-NEXT: ret
373
351
;
374
352
; RV64-BITS-256-LABEL: reverse_nxv16i1:
@@ -385,8 +363,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
385
363
; RV64-BITS-256-NEXT: vrgather.vv v13, v10, v8
386
364
; RV64-BITS-256-NEXT: vrgather.vv v12, v11, v8
387
365
; RV64-BITS-256-NEXT: vsetvli a0, zero, e8, m2, ta, ma
388
- ; RV64-BITS-256-NEXT: vand.vi v8, v12, 1
389
- ; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
366
+ ; RV64-BITS-256-NEXT: vmsne.vi v0, v12, 0
390
367
; RV64-BITS-256-NEXT: ret
391
368
;
392
369
; RV64-BITS-512-LABEL: reverse_nxv16i1:
@@ -403,8 +380,7 @@ define <vscale x 16 x i1> @reverse_nxv16i1(<vscale x 16 x i1> %a) {
403
380
; RV64-BITS-512-NEXT: vrgather.vv v13, v10, v8
404
381
; RV64-BITS-512-NEXT: vrgather.vv v12, v11, v8
405
382
; RV64-BITS-512-NEXT: vsetvli a0, zero, e8, m2, ta, ma
406
- ; RV64-BITS-512-NEXT: vand.vi v8, v12, 1
407
- ; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
383
+ ; RV64-BITS-512-NEXT: vmsne.vi v0, v12, 0
408
384
; RV64-BITS-512-NEXT: ret
409
385
%res = call <vscale x 16 x i1 > @llvm.vector.reverse.nxv16i1 (<vscale x 16 x i1 > %a )
410
386
ret <vscale x 16 x i1 > %res
@@ -427,7 +403,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
427
403
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v18, v12
428
404
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v8, v19, v12
429
405
; RV32-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m4, ta, ma
430
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v8, 1
431
406
; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
432
407
; RV32-BITS-UNKNOWN-NEXT: ret
433
408
;
@@ -447,7 +422,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
447
422
; RV32-BITS-256-NEXT: vrgather.vv v9, v18, v12
448
423
; RV32-BITS-256-NEXT: vrgather.vv v8, v19, v12
449
424
; RV32-BITS-256-NEXT: vsetvli a0, zero, e8, m4, ta, ma
450
- ; RV32-BITS-256-NEXT: vand.vi v8, v8, 1
451
425
; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
452
426
; RV32-BITS-256-NEXT: ret
453
427
;
@@ -467,7 +441,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
467
441
; RV32-BITS-512-NEXT: vrgather.vv v9, v18, v12
468
442
; RV32-BITS-512-NEXT: vrgather.vv v8, v19, v12
469
443
; RV32-BITS-512-NEXT: vsetvli a0, zero, e8, m4, ta, ma
470
- ; RV32-BITS-512-NEXT: vand.vi v8, v8, 1
471
444
; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
472
445
; RV32-BITS-512-NEXT: ret
473
446
;
@@ -487,7 +460,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
487
460
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v18, v12
488
461
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v8, v19, v12
489
462
; RV64-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m4, ta, ma
490
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v8, 1
491
463
; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
492
464
; RV64-BITS-UNKNOWN-NEXT: ret
493
465
;
@@ -507,7 +479,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
507
479
; RV64-BITS-256-NEXT: vrgather.vv v9, v18, v12
508
480
; RV64-BITS-256-NEXT: vrgather.vv v8, v19, v12
509
481
; RV64-BITS-256-NEXT: vsetvli a0, zero, e8, m4, ta, ma
510
- ; RV64-BITS-256-NEXT: vand.vi v8, v8, 1
511
482
; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
512
483
; RV64-BITS-256-NEXT: ret
513
484
;
@@ -527,7 +498,6 @@ define <vscale x 32 x i1> @reverse_nxv32i1(<vscale x 32 x i1> %a) {
527
498
; RV64-BITS-512-NEXT: vrgather.vv v9, v18, v12
528
499
; RV64-BITS-512-NEXT: vrgather.vv v8, v19, v12
529
500
; RV64-BITS-512-NEXT: vsetvli a0, zero, e8, m4, ta, ma
530
- ; RV64-BITS-512-NEXT: vand.vi v8, v8, 1
531
501
; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
532
502
; RV64-BITS-512-NEXT: ret
533
503
%res = call <vscale x 32 x i1 > @llvm.vector.reverse.nxv32i1 (<vscale x 32 x i1 > %a )
@@ -555,7 +525,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
555
525
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v30, v16
556
526
; RV32-BITS-UNKNOWN-NEXT: vrgatherei16.vv v8, v31, v16
557
527
; RV32-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m8, ta, ma
558
- ; RV32-BITS-UNKNOWN-NEXT: vand.vi v8, v8, 1
559
528
; RV32-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
560
529
; RV32-BITS-UNKNOWN-NEXT: ret
561
530
;
@@ -579,7 +548,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
579
548
; RV32-BITS-256-NEXT: vrgather.vv v9, v22, v24
580
549
; RV32-BITS-256-NEXT: vrgather.vv v8, v23, v24
581
550
; RV32-BITS-256-NEXT: vsetvli a0, zero, e8, m8, ta, ma
582
- ; RV32-BITS-256-NEXT: vand.vi v8, v8, 1
583
551
; RV32-BITS-256-NEXT: vmsne.vi v0, v8, 0
584
552
; RV32-BITS-256-NEXT: ret
585
553
;
@@ -603,7 +571,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
603
571
; RV32-BITS-512-NEXT: vrgather.vv v9, v22, v24
604
572
; RV32-BITS-512-NEXT: vrgather.vv v8, v23, v24
605
573
; RV32-BITS-512-NEXT: vsetvli a0, zero, e8, m8, ta, ma
606
- ; RV32-BITS-512-NEXT: vand.vi v8, v8, 1
607
574
; RV32-BITS-512-NEXT: vmsne.vi v0, v8, 0
608
575
; RV32-BITS-512-NEXT: ret
609
576
;
@@ -627,7 +594,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
627
594
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v9, v30, v16
628
595
; RV64-BITS-UNKNOWN-NEXT: vrgatherei16.vv v8, v31, v16
629
596
; RV64-BITS-UNKNOWN-NEXT: vsetvli a0, zero, e8, m8, ta, ma
630
- ; RV64-BITS-UNKNOWN-NEXT: vand.vi v8, v8, 1
631
597
; RV64-BITS-UNKNOWN-NEXT: vmsne.vi v0, v8, 0
632
598
; RV64-BITS-UNKNOWN-NEXT: ret
633
599
;
@@ -651,7 +617,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
651
617
; RV64-BITS-256-NEXT: vrgather.vv v9, v22, v24
652
618
; RV64-BITS-256-NEXT: vrgather.vv v8, v23, v24
653
619
; RV64-BITS-256-NEXT: vsetvli a0, zero, e8, m8, ta, ma
654
- ; RV64-BITS-256-NEXT: vand.vi v8, v8, 1
655
620
; RV64-BITS-256-NEXT: vmsne.vi v0, v8, 0
656
621
; RV64-BITS-256-NEXT: ret
657
622
;
@@ -675,7 +640,6 @@ define <vscale x 64 x i1> @reverse_nxv64i1(<vscale x 64 x i1> %a) {
675
640
; RV64-BITS-512-NEXT: vrgather.vv v9, v22, v24
676
641
; RV64-BITS-512-NEXT: vrgather.vv v8, v23, v24
677
642
; RV64-BITS-512-NEXT: vsetvli a0, zero, e8, m8, ta, ma
678
- ; RV64-BITS-512-NEXT: vand.vi v8, v8, 1
679
643
; RV64-BITS-512-NEXT: vmsne.vi v0, v8, 0
680
644
; RV64-BITS-512-NEXT: ret
681
645
%res = call <vscale x 64 x i1 > @llvm.vector.reverse.nxv64i1 (<vscale x 64 x i1 > %a )
0 commit comments