Lines Matching refs:v8
11 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
12 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
13 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
14 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
15 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
16 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
17 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
18 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
21 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
23 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
24 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
25 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
26 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
27 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
28 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
29 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
35 ; CHECK-D-NEXT: vzext.vf4 v9, v8
42 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
43 ; CHECK-D-NEXT: vrsub.vx v8, v9, a0
44 ; CHECK-D-NEXT: vmerge.vim v8, v8, 8, v0
55 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
56 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
57 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
58 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
59 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
60 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
61 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
62 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
65 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
67 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
68 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
69 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
70 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
71 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
72 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
73 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
79 ; CHECK-D-NEXT: vzext.vf4 v9, v8
86 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
87 ; CHECK-D-NEXT: vrsub.vx v8, v9, a0
88 ; CHECK-D-NEXT: vmerge.vim v8, v8, 8, v0
99 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
100 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
101 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
102 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
103 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
104 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
105 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
106 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
109 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
111 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
112 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
113 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
114 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
115 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
116 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
117 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
123 ; CHECK-D-NEXT: vzext.vf4 v10, v8
130 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
131 ; CHECK-D-NEXT: vrsub.vx v8, v9, a0
132 ; CHECK-D-NEXT: vmerge.vim v8, v8, 8, v0
143 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
144 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
145 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
146 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
147 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
148 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
149 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
150 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
153 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
155 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
156 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
157 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
158 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
159 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
160 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
161 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
167 ; CHECK-D-NEXT: vzext.vf4 v12, v8
174 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
175 ; CHECK-D-NEXT: vrsub.vx v8, v9, a0
176 ; CHECK-D-NEXT: vmerge.vim v8, v8, 8, v0
187 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 1
188 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
189 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 2
190 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
191 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 4
192 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
193 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
194 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 1
197 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v10
199 ; CHECK-ZVE64X-NEXT: vand.vx v10, v8, a0
200 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
201 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
202 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v10, v8
203 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 4
204 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v10
205 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
211 ; CHECK-D-NEXT: vzext.vf4 v16, v8
218 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
219 ; CHECK-D-NEXT: vrsub.vx v8, v10, a0
220 ; CHECK-D-NEXT: vmerge.vim v8, v8, 8, v0
231 ; CHECK-NEXT: vsrl.vi v12, v8, 1
232 ; CHECK-NEXT: vor.vv v8, v8, v12
233 ; CHECK-NEXT: vsrl.vi v12, v8, 2
234 ; CHECK-NEXT: vor.vv v8, v8, v12
235 ; CHECK-NEXT: vsrl.vi v12, v8, 4
236 ; CHECK-NEXT: vor.vv v8, v8, v12
237 ; CHECK-NEXT: vnot.v v8, v8
238 ; CHECK-NEXT: vsrl.vi v12, v8, 1
241 ; CHECK-NEXT: vsub.vv v8, v8, v12
243 ; CHECK-NEXT: vand.vx v12, v8, a0
244 ; CHECK-NEXT: vsrl.vi v8, v8, 2
245 ; CHECK-NEXT: vand.vx v8, v8, a0
246 ; CHECK-NEXT: vadd.vv v8, v12, v8
247 ; CHECK-NEXT: vsrl.vi v12, v8, 4
248 ; CHECK-NEXT: vadd.vv v8, v8, v12
249 ; CHECK-NEXT: vand.vi v8, v8, 15
260 ; CHECK-NEXT: vsrl.vi v16, v8, 1
261 ; CHECK-NEXT: vor.vv v8, v8, v16
262 ; CHECK-NEXT: vsrl.vi v16, v8, 2
263 ; CHECK-NEXT: vor.vv v8, v8, v16
264 ; CHECK-NEXT: vsrl.vi v16, v8, 4
265 ; CHECK-NEXT: vor.vv v8, v8, v16
266 ; CHECK-NEXT: vnot.v v8, v8
267 ; CHECK-NEXT: vsrl.vi v16, v8, 1
270 ; CHECK-NEXT: vsub.vv v8, v8, v16
272 ; CHECK-NEXT: vand.vx v16, v8, a0
273 ; CHECK-NEXT: vsrl.vi v8, v8, 2
274 ; CHECK-NEXT: vand.vx v8, v8, a0
275 ; CHECK-NEXT: vadd.vv v8, v16, v8
276 ; CHECK-NEXT: vsrl.vi v16, v8, 4
277 ; CHECK-NEXT: vadd.vv v8, v8, v16
278 ; CHECK-NEXT: vand.vi v8, v8, 15
289 ; RV32I-NEXT: vsrl.vi v9, v8, 1
290 ; RV32I-NEXT: vor.vv v8, v8, v9
291 ; RV32I-NEXT: vsrl.vi v9, v8, 2
292 ; RV32I-NEXT: vor.vv v8, v8, v9
293 ; RV32I-NEXT: vsrl.vi v9, v8, 4
294 ; RV32I-NEXT: vor.vv v8, v8, v9
295 ; RV32I-NEXT: vsrl.vi v9, v8, 8
296 ; RV32I-NEXT: vor.vv v8, v8, v9
297 ; RV32I-NEXT: vnot.v v8, v8
298 ; RV32I-NEXT: vsrl.vi v9, v8, 1
302 ; RV32I-NEXT: vsub.vv v8, v8, v9
305 ; RV32I-NEXT: vand.vx v9, v8, a0
306 ; RV32I-NEXT: vsrl.vi v8, v8, 2
307 ; RV32I-NEXT: vand.vx v8, v8, a0
308 ; RV32I-NEXT: vadd.vv v8, v9, v8
309 ; RV32I-NEXT: vsrl.vi v9, v8, 4
310 ; RV32I-NEXT: vadd.vv v8, v8, v9
313 ; RV32I-NEXT: vand.vx v8, v8, a0
315 ; RV32I-NEXT: vmul.vx v8, v8, a0
316 ; RV32I-NEXT: vsrl.vi v8, v8, 8
322 ; RV64I-NEXT: vsrl.vi v9, v8, 1
323 ; RV64I-NEXT: vor.vv v8, v8, v9
324 ; RV64I-NEXT: vsrl.vi v9, v8, 2
325 ; RV64I-NEXT: vor.vv v8, v8, v9
326 ; RV64I-NEXT: vsrl.vi v9, v8, 4
327 ; RV64I-NEXT: vor.vv v8, v8, v9
328 ; RV64I-NEXT: vsrl.vi v9, v8, 8
329 ; RV64I-NEXT: vor.vv v8, v8, v9
330 ; RV64I-NEXT: vnot.v v8, v8
331 ; RV64I-NEXT: vsrl.vi v9, v8, 1
335 ; RV64I-NEXT: vsub.vv v8, v8, v9
338 ; RV64I-NEXT: vand.vx v9, v8, a0
339 ; RV64I-NEXT: vsrl.vi v8, v8, 2
340 ; RV64I-NEXT: vand.vx v8, v8, a0
341 ; RV64I-NEXT: vadd.vv v8, v9, v8
342 ; RV64I-NEXT: vsrl.vi v9, v8, 4
343 ; RV64I-NEXT: vadd.vv v8, v8, v9
346 ; RV64I-NEXT: vand.vx v8, v8, a0
348 ; RV64I-NEXT: vmul.vx v8, v8, a0
349 ; RV64I-NEXT: vsrl.vi v8, v8, 8
355 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
359 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
361 ; CHECK-D-NEXT: vmerge.vxm v8, v9, a0, v0
372 ; RV32I-NEXT: vsrl.vi v9, v8, 1
373 ; RV32I-NEXT: vor.vv v8, v8, v9
374 ; RV32I-NEXT: vsrl.vi v9, v8, 2
375 ; RV32I-NEXT: vor.vv v8, v8, v9
376 ; RV32I-NEXT: vsrl.vi v9, v8, 4
377 ; RV32I-NEXT: vor.vv v8, v8, v9
378 ; RV32I-NEXT: vsrl.vi v9, v8, 8
379 ; RV32I-NEXT: vor.vv v8, v8, v9
380 ; RV32I-NEXT: vnot.v v8, v8
381 ; RV32I-NEXT: vsrl.vi v9, v8, 1
385 ; RV32I-NEXT: vsub.vv v8, v8, v9
388 ; RV32I-NEXT: vand.vx v9, v8, a0
389 ; RV32I-NEXT: vsrl.vi v8, v8, 2
390 ; RV32I-NEXT: vand.vx v8, v8, a0
391 ; RV32I-NEXT: vadd.vv v8, v9, v8
392 ; RV32I-NEXT: vsrl.vi v9, v8, 4
393 ; RV32I-NEXT: vadd.vv v8, v8, v9
396 ; RV32I-NEXT: vand.vx v8, v8, a0
398 ; RV32I-NEXT: vmul.vx v8, v8, a0
399 ; RV32I-NEXT: vsrl.vi v8, v8, 8
405 ; RV64I-NEXT: vsrl.vi v9, v8, 1
406 ; RV64I-NEXT: vor.vv v8, v8, v9
407 ; RV64I-NEXT: vsrl.vi v9, v8, 2
408 ; RV64I-NEXT: vor.vv v8, v8, v9
409 ; RV64I-NEXT: vsrl.vi v9, v8, 4
410 ; RV64I-NEXT: vor.vv v8, v8, v9
411 ; RV64I-NEXT: vsrl.vi v9, v8, 8
412 ; RV64I-NEXT: vor.vv v8, v8, v9
413 ; RV64I-NEXT: vnot.v v8, v8
414 ; RV64I-NEXT: vsrl.vi v9, v8, 1
418 ; RV64I-NEXT: vsub.vv v8, v8, v9
421 ; RV64I-NEXT: vand.vx v9, v8, a0
422 ; RV64I-NEXT: vsrl.vi v8, v8, 2
423 ; RV64I-NEXT: vand.vx v8, v8, a0
424 ; RV64I-NEXT: vadd.vv v8, v9, v8
425 ; RV64I-NEXT: vsrl.vi v9, v8, 4
426 ; RV64I-NEXT: vadd.vv v8, v8, v9
429 ; RV64I-NEXT: vand.vx v8, v8, a0
431 ; RV64I-NEXT: vmul.vx v8, v8, a0
432 ; RV64I-NEXT: vsrl.vi v8, v8, 8
438 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
442 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
444 ; CHECK-D-NEXT: vmerge.vxm v8, v9, a0, v0
455 ; RV32I-NEXT: vsrl.vi v9, v8, 1
456 ; RV32I-NEXT: vor.vv v8, v8, v9
457 ; RV32I-NEXT: vsrl.vi v9, v8, 2
458 ; RV32I-NEXT: vor.vv v8, v8, v9
459 ; RV32I-NEXT: vsrl.vi v9, v8, 4
460 ; RV32I-NEXT: vor.vv v8, v8, v9
461 ; RV32I-NEXT: vsrl.vi v9, v8, 8
462 ; RV32I-NEXT: vor.vv v8, v8, v9
463 ; RV32I-NEXT: vnot.v v8, v8
464 ; RV32I-NEXT: vsrl.vi v9, v8, 1
468 ; RV32I-NEXT: vsub.vv v8, v8, v9
471 ; RV32I-NEXT: vand.vx v9, v8, a0
472 ; RV32I-NEXT: vsrl.vi v8, v8, 2
473 ; RV32I-NEXT: vand.vx v8, v8, a0
474 ; RV32I-NEXT: vadd.vv v8, v9, v8
475 ; RV32I-NEXT: vsrl.vi v9, v8, 4
476 ; RV32I-NEXT: vadd.vv v8, v8, v9
479 ; RV32I-NEXT: vand.vx v8, v8, a0
481 ; RV32I-NEXT: vmul.vx v8, v8, a0
482 ; RV32I-NEXT: vsrl.vi v8, v8, 8
488 ; RV64I-NEXT: vsrl.vi v9, v8, 1
489 ; RV64I-NEXT: vor.vv v8, v8, v9
490 ; RV64I-NEXT: vsrl.vi v9, v8, 2
491 ; RV64I-NEXT: vor.vv v8, v8, v9
492 ; RV64I-NEXT: vsrl.vi v9, v8, 4
493 ; RV64I-NEXT: vor.vv v8, v8, v9
494 ; RV64I-NEXT: vsrl.vi v9, v8, 8
495 ; RV64I-NEXT: vor.vv v8, v8, v9
496 ; RV64I-NEXT: vnot.v v8, v8
497 ; RV64I-NEXT: vsrl.vi v9, v8, 1
501 ; RV64I-NEXT: vsub.vv v8, v8, v9
504 ; RV64I-NEXT: vand.vx v9, v8, a0
505 ; RV64I-NEXT: vsrl.vi v8, v8, 2
506 ; RV64I-NEXT: vand.vx v8, v8, a0
507 ; RV64I-NEXT: vadd.vv v8, v9, v8
508 ; RV64I-NEXT: vsrl.vi v9, v8, 4
509 ; RV64I-NEXT: vadd.vv v8, v8, v9
512 ; RV64I-NEXT: vand.vx v8, v8, a0
514 ; RV64I-NEXT: vmul.vx v8, v8, a0
515 ; RV64I-NEXT: vsrl.vi v8, v8, 8
521 ; CHECK-D-NEXT: vfwcvt.f.xu.v v10, v8
525 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
527 ; CHECK-D-NEXT: vmerge.vxm v8, v9, a0, v0
538 ; RV32I-NEXT: vsrl.vi v10, v8, 1
539 ; RV32I-NEXT: vor.vv v8, v8, v10
540 ; RV32I-NEXT: vsrl.vi v10, v8, 2
541 ; RV32I-NEXT: vor.vv v8, v8, v10
542 ; RV32I-NEXT: vsrl.vi v10, v8, 4
543 ; RV32I-NEXT: vor.vv v8, v8, v10
544 ; RV32I-NEXT: vsrl.vi v10, v8, 8
545 ; RV32I-NEXT: vor.vv v8, v8, v10
546 ; RV32I-NEXT: vnot.v v8, v8
547 ; RV32I-NEXT: vsrl.vi v10, v8, 1
551 ; RV32I-NEXT: vsub.vv v8, v8, v10
554 ; RV32I-NEXT: vand.vx v10, v8, a0
555 ; RV32I-NEXT: vsrl.vi v8, v8, 2
556 ; RV32I-NEXT: vand.vx v8, v8, a0
557 ; RV32I-NEXT: vadd.vv v8, v10, v8
558 ; RV32I-NEXT: vsrl.vi v10, v8, 4
559 ; RV32I-NEXT: vadd.vv v8, v8, v10
562 ; RV32I-NEXT: vand.vx v8, v8, a0
564 ; RV32I-NEXT: vmul.vx v8, v8, a0
565 ; RV32I-NEXT: vsrl.vi v8, v8, 8
571 ; RV64I-NEXT: vsrl.vi v10, v8, 1
572 ; RV64I-NEXT: vor.vv v8, v8, v10
573 ; RV64I-NEXT: vsrl.vi v10, v8, 2
574 ; RV64I-NEXT: vor.vv v8, v8, v10
575 ; RV64I-NEXT: vsrl.vi v10, v8, 4
576 ; RV64I-NEXT: vor.vv v8, v8, v10
577 ; RV64I-NEXT: vsrl.vi v10, v8, 8
578 ; RV64I-NEXT: vor.vv v8, v8, v10
579 ; RV64I-NEXT: vnot.v v8, v8
580 ; RV64I-NEXT: vsrl.vi v10, v8, 1
584 ; RV64I-NEXT: vsub.vv v8, v8, v10
587 ; RV64I-NEXT: vand.vx v10, v8, a0
588 ; RV64I-NEXT: vsrl.vi v8, v8, 2
589 ; RV64I-NEXT: vand.vx v8, v8, a0
590 ; RV64I-NEXT: vadd.vv v8, v10, v8
591 ; RV64I-NEXT: vsrl.vi v10, v8, 4
592 ; RV64I-NEXT: vadd.vv v8, v8, v10
595 ; RV64I-NEXT: vand.vx v8, v8, a0
597 ; RV64I-NEXT: vmul.vx v8, v8, a0
598 ; RV64I-NEXT: vsrl.vi v8, v8, 8
604 ; CHECK-D-NEXT: vfwcvt.f.xu.v v12, v8
608 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
610 ; CHECK-D-NEXT: vmerge.vxm v8, v10, a0, v0
621 ; RV32I-NEXT: vsrl.vi v12, v8, 1
622 ; RV32I-NEXT: vor.vv v8, v8, v12
623 ; RV32I-NEXT: vsrl.vi v12, v8, 2
624 ; RV32I-NEXT: vor.vv v8, v8, v12
625 ; RV32I-NEXT: vsrl.vi v12, v8, 4
626 ; RV32I-NEXT: vor.vv v8, v8, v12
627 ; RV32I-NEXT: vsrl.vi v12, v8, 8
628 ; RV32I-NEXT: vor.vv v8, v8, v12
629 ; RV32I-NEXT: vnot.v v8, v8
630 ; RV32I-NEXT: vsrl.vi v12, v8, 1
634 ; RV32I-NEXT: vsub.vv v8, v8, v12
637 ; RV32I-NEXT: vand.vx v12, v8, a0
638 ; RV32I-NEXT: vsrl.vi v8, v8, 2
639 ; RV32I-NEXT: vand.vx v8, v8, a0
640 ; RV32I-NEXT: vadd.vv v8, v12, v8
641 ; RV32I-NEXT: vsrl.vi v12, v8, 4
642 ; RV32I-NEXT: vadd.vv v8, v8, v12
645 ; RV32I-NEXT: vand.vx v8, v8, a0
647 ; RV32I-NEXT: vmul.vx v8, v8, a0
648 ; RV32I-NEXT: vsrl.vi v8, v8, 8
654 ; RV64I-NEXT: vsrl.vi v12, v8, 1
655 ; RV64I-NEXT: vor.vv v8, v8, v12
656 ; RV64I-NEXT: vsrl.vi v12, v8, 2
657 ; RV64I-NEXT: vor.vv v8, v8, v12
658 ; RV64I-NEXT: vsrl.vi v12, v8, 4
659 ; RV64I-NEXT: vor.vv v8, v8, v12
660 ; RV64I-NEXT: vsrl.vi v12, v8, 8
661 ; RV64I-NEXT: vor.vv v8, v8, v12
662 ; RV64I-NEXT: vnot.v v8, v8
663 ; RV64I-NEXT: vsrl.vi v12, v8, 1
667 ; RV64I-NEXT: vsub.vv v8, v8, v12
670 ; RV64I-NEXT: vand.vx v12, v8, a0
671 ; RV64I-NEXT: vsrl.vi v8, v8, 2
672 ; RV64I-NEXT: vand.vx v8, v8, a0
673 ; RV64I-NEXT: vadd.vv v8, v12, v8
674 ; RV64I-NEXT: vsrl.vi v12, v8, 4
675 ; RV64I-NEXT: vadd.vv v8, v8, v12
678 ; RV64I-NEXT: vand.vx v8, v8, a0
680 ; RV64I-NEXT: vmul.vx v8, v8, a0
681 ; RV64I-NEXT: vsrl.vi v8, v8, 8
687 ; CHECK-D-NEXT: vfwcvt.f.xu.v v16, v8
691 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
693 ; CHECK-D-NEXT: vmerge.vxm v8, v12, a0, v0
704 ; RV32-NEXT: vsrl.vi v16, v8, 1
705 ; RV32-NEXT: vor.vv v8, v8, v16
706 ; RV32-NEXT: vsrl.vi v16, v8, 2
707 ; RV32-NEXT: vor.vv v8, v8, v16
708 ; RV32-NEXT: vsrl.vi v16, v8, 4
709 ; RV32-NEXT: vor.vv v8, v8, v16
710 ; RV32-NEXT: vsrl.vi v16, v8, 8
711 ; RV32-NEXT: vor.vv v8, v8, v16
712 ; RV32-NEXT: vnot.v v8, v8
713 ; RV32-NEXT: vsrl.vi v16, v8, 1
717 ; RV32-NEXT: vsub.vv v8, v8, v16
720 ; RV32-NEXT: vand.vx v16, v8, a0
721 ; RV32-NEXT: vsrl.vi v8, v8, 2
722 ; RV32-NEXT: vand.vx v8, v8, a0
723 ; RV32-NEXT: vadd.vv v8, v16, v8
724 ; RV32-NEXT: vsrl.vi v16, v8, 4
725 ; RV32-NEXT: vadd.vv v8, v8, v16
728 ; RV32-NEXT: vand.vx v8, v8, a0
730 ; RV32-NEXT: vmul.vx v8, v8, a0
731 ; RV32-NEXT: vsrl.vi v8, v8, 8
737 ; RV64-NEXT: vsrl.vi v16, v8, 1
738 ; RV64-NEXT: vor.vv v8, v8, v16
739 ; RV64-NEXT: vsrl.vi v16, v8, 2
740 ; RV64-NEXT: vor.vv v8, v8, v16
741 ; RV64-NEXT: vsrl.vi v16, v8, 4
742 ; RV64-NEXT: vor.vv v8, v8, v16
743 ; RV64-NEXT: vsrl.vi v16, v8, 8
744 ; RV64-NEXT: vor.vv v8, v8, v16
745 ; RV64-NEXT: vnot.v v8, v8
746 ; RV64-NEXT: vsrl.vi v16, v8, 1
750 ; RV64-NEXT: vsub.vv v8, v8, v16
753 ; RV64-NEXT: vand.vx v16, v8, a0
754 ; RV64-NEXT: vsrl.vi v8, v8, 2
755 ; RV64-NEXT: vand.vx v8, v8, a0
756 ; RV64-NEXT: vadd.vv v8, v16, v8
757 ; RV64-NEXT: vsrl.vi v16, v8, 4
758 ; RV64-NEXT: vadd.vv v8, v8, v16
761 ; RV64-NEXT: vand.vx v8, v8, a0
763 ; RV64-NEXT: vmul.vx v8, v8, a0
764 ; RV64-NEXT: vsrl.vi v8, v8, 8
775 ; RV32I-NEXT: vsrl.vi v9, v8, 1
776 ; RV32I-NEXT: vor.vv v8, v8, v9
777 ; RV32I-NEXT: vsrl.vi v9, v8, 2
778 ; RV32I-NEXT: vor.vv v8, v8, v9
779 ; RV32I-NEXT: vsrl.vi v9, v8, 4
780 ; RV32I-NEXT: vor.vv v8, v8, v9
781 ; RV32I-NEXT: vsrl.vi v9, v8, 8
782 ; RV32I-NEXT: vor.vv v8, v8, v9
783 ; RV32I-NEXT: vsrl.vi v9, v8, 16
784 ; RV32I-NEXT: vor.vv v8, v8, v9
785 ; RV32I-NEXT: vnot.v v8, v8
786 ; RV32I-NEXT: vsrl.vi v9, v8, 1
790 ; RV32I-NEXT: vsub.vv v8, v8, v9
793 ; RV32I-NEXT: vand.vx v9, v8, a0
794 ; RV32I-NEXT: vsrl.vi v8, v8, 2
795 ; RV32I-NEXT: vand.vx v8, v8, a0
796 ; RV32I-NEXT: vadd.vv v8, v9, v8
797 ; RV32I-NEXT: vsrl.vi v9, v8, 4
798 ; RV32I-NEXT: vadd.vv v8, v8, v9
801 ; RV32I-NEXT: vand.vx v8, v8, a0
804 ; RV32I-NEXT: vmul.vx v8, v8, a0
805 ; RV32I-NEXT: vsrl.vi v8, v8, 24
811 ; RV64I-NEXT: vsrl.vi v9, v8, 1
812 ; RV64I-NEXT: vor.vv v8, v8, v9
813 ; RV64I-NEXT: vsrl.vi v9, v8, 2
814 ; RV64I-NEXT: vor.vv v8, v8, v9
815 ; RV64I-NEXT: vsrl.vi v9, v8, 4
816 ; RV64I-NEXT: vor.vv v8, v8, v9
817 ; RV64I-NEXT: vsrl.vi v9, v8, 8
818 ; RV64I-NEXT: vor.vv v8, v8, v9
819 ; RV64I-NEXT: vsrl.vi v9, v8, 16
820 ; RV64I-NEXT: vor.vv v8, v8, v9
821 ; RV64I-NEXT: vnot.v v8, v8
822 ; RV64I-NEXT: vsrl.vi v9, v8, 1
826 ; RV64I-NEXT: vsub.vv v8, v8, v9
829 ; RV64I-NEXT: vand.vx v9, v8, a0
830 ; RV64I-NEXT: vsrl.vi v8, v8, 2
831 ; RV64I-NEXT: vand.vx v8, v8, a0
832 ; RV64I-NEXT: vadd.vv v8, v9, v8
833 ; RV64I-NEXT: vsrl.vi v9, v8, 4
834 ; RV64I-NEXT: vadd.vv v8, v8, v9
837 ; RV64I-NEXT: vand.vx v8, v8, a0
840 ; RV64I-NEXT: vmul.vx v8, v8, a0
841 ; RV64I-NEXT: vsrl.vi v8, v8, 24
847 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
855 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
857 ; CHECK-D-NEXT: vmerge.vxm v8, v9, a0, v0
868 ; RV32I-NEXT: vsrl.vi v9, v8, 1
869 ; RV32I-NEXT: vor.vv v8, v8, v9
870 ; RV32I-NEXT: vsrl.vi v9, v8, 2
871 ; RV32I-NEXT: vor.vv v8, v8, v9
872 ; RV32I-NEXT: vsrl.vi v9, v8, 4
873 ; RV32I-NEXT: vor.vv v8, v8, v9
874 ; RV32I-NEXT: vsrl.vi v9, v8, 8
875 ; RV32I-NEXT: vor.vv v8, v8, v9
876 ; RV32I-NEXT: vsrl.vi v9, v8, 16
877 ; RV32I-NEXT: vor.vv v8, v8, v9
878 ; RV32I-NEXT: vnot.v v8, v8
879 ; RV32I-NEXT: vsrl.vi v9, v8, 1
883 ; RV32I-NEXT: vsub.vv v8, v8, v9
886 ; RV32I-NEXT: vand.vx v9, v8, a0
887 ; RV32I-NEXT: vsrl.vi v8, v8, 2
888 ; RV32I-NEXT: vand.vx v8, v8, a0
889 ; RV32I-NEXT: vadd.vv v8, v9, v8
890 ; RV32I-NEXT: vsrl.vi v9, v8, 4
891 ; RV32I-NEXT: vadd.vv v8, v8, v9
894 ; RV32I-NEXT: vand.vx v8, v8, a0
897 ; RV32I-NEXT: vmul.vx v8, v8, a0
898 ; RV32I-NEXT: vsrl.vi v8, v8, 24
904 ; RV64I-NEXT: vsrl.vi v9, v8, 1
905 ; RV64I-NEXT: vor.vv v8, v8, v9
906 ; RV64I-NEXT: vsrl.vi v9, v8, 2
907 ; RV64I-NEXT: vor.vv v8, v8, v9
908 ; RV64I-NEXT: vsrl.vi v9, v8, 4
909 ; RV64I-NEXT: vor.vv v8, v8, v9
910 ; RV64I-NEXT: vsrl.vi v9, v8, 8
911 ; RV64I-NEXT: vor.vv v8, v8, v9
912 ; RV64I-NEXT: vsrl.vi v9, v8, 16
913 ; RV64I-NEXT: vor.vv v8, v8, v9
914 ; RV64I-NEXT: vnot.v v8, v8
915 ; RV64I-NEXT: vsrl.vi v9, v8, 1
919 ; RV64I-NEXT: vsub.vv v8, v8, v9
922 ; RV64I-NEXT: vand.vx v9, v8, a0
923 ; RV64I-NEXT: vsrl.vi v8, v8, 2
924 ; RV64I-NEXT: vand.vx v8, v8, a0
925 ; RV64I-NEXT: vadd.vv v8, v9, v8
926 ; RV64I-NEXT: vsrl.vi v9, v8, 4
927 ; RV64I-NEXT: vadd.vv v8, v8, v9
930 ; RV64I-NEXT: vand.vx v8, v8, a0
933 ; RV64I-NEXT: vmul.vx v8, v8, a0
934 ; RV64I-NEXT: vsrl.vi v8, v8, 24
940 ; CHECK-D-NEXT: vfwcvt.f.xu.v v10, v8
948 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
950 ; CHECK-D-NEXT: vmerge.vxm v8, v9, a0, v0
961 ; RV32I-NEXT: vsrl.vi v10, v8, 1
962 ; RV32I-NEXT: vor.vv v8, v8, v10
963 ; RV32I-NEXT: vsrl.vi v10, v8, 2
964 ; RV32I-NEXT: vor.vv v8, v8, v10
965 ; RV32I-NEXT: vsrl.vi v10, v8, 4
966 ; RV32I-NEXT: vor.vv v8, v8, v10
967 ; RV32I-NEXT: vsrl.vi v10, v8, 8
968 ; RV32I-NEXT: vor.vv v8, v8, v10
969 ; RV32I-NEXT: vsrl.vi v10, v8, 16
970 ; RV32I-NEXT: vor.vv v8, v8, v10
971 ; RV32I-NEXT: vnot.v v8, v8
972 ; RV32I-NEXT: vsrl.vi v10, v8, 1
976 ; RV32I-NEXT: vsub.vv v8, v8, v10
979 ; RV32I-NEXT: vand.vx v10, v8, a0
980 ; RV32I-NEXT: vsrl.vi v8, v8, 2
981 ; RV32I-NEXT: vand.vx v8, v8, a0
982 ; RV32I-NEXT: vadd.vv v8, v10, v8
983 ; RV32I-NEXT: vsrl.vi v10, v8, 4
984 ; RV32I-NEXT: vadd.vv v8, v8, v10
987 ; RV32I-NEXT: vand.vx v8, v8, a0
990 ; RV32I-NEXT: vmul.vx v8, v8, a0
991 ; RV32I-NEXT: vsrl.vi v8, v8, 24
997 ; RV64I-NEXT: vsrl.vi v10, v8, 1
998 ; RV64I-NEXT: vor.vv v8, v8, v10
999 ; RV64I-NEXT: vsrl.vi v10, v8, 2
1000 ; RV64I-NEXT: vor.vv v8, v8, v10
1001 ; RV64I-NEXT: vsrl.vi v10, v8, 4
1002 ; RV64I-NEXT: vor.vv v8, v8, v10
1003 ; RV64I-NEXT: vsrl.vi v10, v8, 8
1004 ; RV64I-NEXT: vor.vv v8, v8, v10
1005 ; RV64I-NEXT: vsrl.vi v10, v8, 16
1006 ; RV64I-NEXT: vor.vv v8, v8, v10
1007 ; RV64I-NEXT: vnot.v v8, v8
1008 ; RV64I-NEXT: vsrl.vi v10, v8, 1
1012 ; RV64I-NEXT: vsub.vv v8, v8, v10
1015 ; RV64I-NEXT: vand.vx v10, v8, a0
1016 ; RV64I-NEXT: vsrl.vi v8, v8, 2
1017 ; RV64I-NEXT: vand.vx v8, v8, a0
1018 ; RV64I-NEXT: vadd.vv v8, v10, v8
1019 ; RV64I-NEXT: vsrl.vi v10, v8, 4
1020 ; RV64I-NEXT: vadd.vv v8, v8, v10
1023 ; RV64I-NEXT: vand.vx v8, v8, a0
1026 ; RV64I-NEXT: vmul.vx v8, v8, a0
1027 ; RV64I-NEXT: vsrl.vi v8, v8, 24
1033 ; CHECK-D-NEXT: vfwcvt.f.xu.v v12, v8
1041 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
1043 ; CHECK-D-NEXT: vmerge.vxm v8, v10, a0, v0
1054 ; RV32I-NEXT: vsrl.vi v12, v8, 1
1055 ; RV32I-NEXT: vor.vv v8, v8, v12
1056 ; RV32I-NEXT: vsrl.vi v12, v8, 2
1057 ; RV32I-NEXT: vor.vv v8, v8, v12
1058 ; RV32I-NEXT: vsrl.vi v12, v8, 4
1059 ; RV32I-NEXT: vor.vv v8, v8, v12
1060 ; RV32I-NEXT: vsrl.vi v12, v8, 8
1061 ; RV32I-NEXT: vor.vv v8, v8, v12
1062 ; RV32I-NEXT: vsrl.vi v12, v8, 16
1063 ; RV32I-NEXT: vor.vv v8, v8, v12
1064 ; RV32I-NEXT: vnot.v v8, v8
1065 ; RV32I-NEXT: vsrl.vi v12, v8, 1
1069 ; RV32I-NEXT: vsub.vv v8, v8, v12
1072 ; RV32I-NEXT: vand.vx v12, v8, a0
1073 ; RV32I-NEXT: vsrl.vi v8, v8, 2
1074 ; RV32I-NEXT: vand.vx v8, v8, a0
1075 ; RV32I-NEXT: vadd.vv v8, v12, v8
1076 ; RV32I-NEXT: vsrl.vi v12, v8, 4
1077 ; RV32I-NEXT: vadd.vv v8, v8, v12
1080 ; RV32I-NEXT: vand.vx v8, v8, a0
1083 ; RV32I-NEXT: vmul.vx v8, v8, a0
1084 ; RV32I-NEXT: vsrl.vi v8, v8, 24
1090 ; RV64I-NEXT: vsrl.vi v12, v8, 1
1091 ; RV64I-NEXT: vor.vv v8, v8, v12
1092 ; RV64I-NEXT: vsrl.vi v12, v8, 2
1093 ; RV64I-NEXT: vor.vv v8, v8, v12
1094 ; RV64I-NEXT: vsrl.vi v12, v8, 4
1095 ; RV64I-NEXT: vor.vv v8, v8, v12
1096 ; RV64I-NEXT: vsrl.vi v12, v8, 8
1097 ; RV64I-NEXT: vor.vv v8, v8, v12
1098 ; RV64I-NEXT: vsrl.vi v12, v8, 16
1099 ; RV64I-NEXT: vor.vv v8, v8, v12
1100 ; RV64I-NEXT: vnot.v v8, v8
1101 ; RV64I-NEXT: vsrl.vi v12, v8, 1
1105 ; RV64I-NEXT: vsub.vv v8, v8, v12
1108 ; RV64I-NEXT: vand.vx v12, v8, a0
1109 ; RV64I-NEXT: vsrl.vi v8, v8, 2
1110 ; RV64I-NEXT: vand.vx v8, v8, a0
1111 ; RV64I-NEXT: vadd.vv v8, v12, v8
1112 ; RV64I-NEXT: vsrl.vi v12, v8, 4
1113 ; RV64I-NEXT: vadd.vv v8, v8, v12
1116 ; RV64I-NEXT: vand.vx v8, v8, a0
1119 ; RV64I-NEXT: vmul.vx v8, v8, a0
1120 ; RV64I-NEXT: vsrl.vi v8, v8, 24
1126 ; CHECK-D-NEXT: vfwcvt.f.xu.v v16, v8
1134 ; CHECK-D-NEXT: vmseq.vi v0, v8, 0
1136 ; CHECK-D-NEXT: vmerge.vxm v8, v12, a0, v0
1147 ; RV32-NEXT: vsrl.vi v16, v8, 1
1148 ; RV32-NEXT: vor.vv v8, v8, v16
1149 ; RV32-NEXT: vsrl.vi v16, v8, 2
1150 ; RV32-NEXT: vor.vv v8, v8, v16
1151 ; RV32-NEXT: vsrl.vi v16, v8, 4
1152 ; RV32-NEXT: vor.vv v8, v8, v16
1153 ; RV32-NEXT: vsrl.vi v16, v8, 8
1154 ; RV32-NEXT: vor.vv v8, v8, v16
1155 ; RV32-NEXT: vsrl.vi v16, v8, 16
1156 ; RV32-NEXT: vor.vv v8, v8, v16
1157 ; RV32-NEXT: vnot.v v8, v8
1158 ; RV32-NEXT: vsrl.vi v16, v8, 1
1162 ; RV32-NEXT: vsub.vv v8, v8, v16
1165 ; RV32-NEXT: vand.vx v16, v8, a0
1166 ; RV32-NEXT: vsrl.vi v8, v8, 2
1167 ; RV32-NEXT: vand.vx v8, v8, a0
1168 ; RV32-NEXT: vadd.vv v8, v16, v8
1169 ; RV32-NEXT: vsrl.vi v16, v8, 4
1170 ; RV32-NEXT: vadd.vv v8, v8, v16
1173 ; RV32-NEXT: vand.vx v8, v8, a0
1176 ; RV32-NEXT: vmul.vx v8, v8, a0
1177 ; RV32-NEXT: vsrl.vi v8, v8, 24
1183 ; RV64-NEXT: vsrl.vi v16, v8, 1
1184 ; RV64-NEXT: vor.vv v8, v8, v16
1185 ; RV64-NEXT: vsrl.vi v16, v8, 2
1186 ; RV64-NEXT: vor.vv v8, v8, v16
1187 ; RV64-NEXT: vsrl.vi v16, v8, 4
1188 ; RV64-NEXT: vor.vv v8, v8, v16
1189 ; RV64-NEXT: vsrl.vi v16, v8, 8
1190 ; RV64-NEXT: vor.vv v8, v8, v16
1191 ; RV64-NEXT: vsrl.vi v16, v8, 16
1192 ; RV64-NEXT: vor.vv v8, v8, v16
1193 ; RV64-NEXT: vnot.v v8, v8
1194 ; RV64-NEXT: vsrl.vi v16, v8, 1
1198 ; RV64-NEXT: vsub.vv v8, v8, v16
1201 ; RV64-NEXT: vand.vx v16, v8, a0
1202 ; RV64-NEXT: vsrl.vi v8, v8, 2
1203 ; RV64-NEXT: vand.vx v8, v8, a0
1204 ; RV64-NEXT: vadd.vv v8, v16, v8
1205 ; RV64-NEXT: vsrl.vi v16, v8, 4
1206 ; RV64-NEXT: vadd.vv v8, v8, v16
1209 ; RV64-NEXT: vand.vx v8, v8, a0
1212 ; RV64-NEXT: vmul.vx v8, v8, a0
1213 ; RV64-NEXT: vsrl.vi v8, v8, 24
1242 ; RV32-NEXT: vsrl.vi v9, v8, 1
1243 ; RV32-NEXT: vor.vv v8, v8, v9
1244 ; RV32-NEXT: vsrl.vi v9, v8, 2
1245 ; RV32-NEXT: vor.vv v8, v8, v9
1246 ; RV32-NEXT: vsrl.vi v9, v8, 4
1247 ; RV32-NEXT: vor.vv v8, v8, v9
1248 ; RV32-NEXT: vsrl.vi v9, v8, 8
1249 ; RV32-NEXT: vor.vv v8, v8, v9
1250 ; RV32-NEXT: vsrl.vi v9, v8, 16
1251 ; RV32-NEXT: vor.vv v8, v8, v9
1253 ; RV32-NEXT: vsrl.vx v9, v8, a0
1254 ; RV32-NEXT: vor.vv v8, v8, v9
1257 ; RV32-NEXT: vnot.v v8, v8
1259 ; RV32-NEXT: vsrl.vi v11, v8, 1
1261 ; RV32-NEXT: vsub.vv v8, v8, v9
1262 ; RV32-NEXT: vand.vv v9, v8, v10
1263 ; RV32-NEXT: vsrl.vi v8, v8, 2
1264 ; RV32-NEXT: vand.vv v8, v8, v10
1265 ; RV32-NEXT: vadd.vv v8, v9, v8
1268 ; RV32-NEXT: vsrl.vi v11, v8, 4
1269 ; RV32-NEXT: vadd.vv v8, v8, v11
1270 ; RV32-NEXT: vand.vv v8, v8, v9
1271 ; RV32-NEXT: vmul.vv v8, v8, v10
1273 ; RV32-NEXT: vsrl.vx v8, v8, a0
1280 ; RV64-NEXT: vsrl.vi v9, v8, 1
1281 ; RV64-NEXT: vor.vv v8, v8, v9
1282 ; RV64-NEXT: vsrl.vi v9, v8, 2
1283 ; RV64-NEXT: vor.vv v8, v8, v9
1284 ; RV64-NEXT: vsrl.vi v9, v8, 4
1285 ; RV64-NEXT: vor.vv v8, v8, v9
1286 ; RV64-NEXT: vsrl.vi v9, v8, 8
1287 ; RV64-NEXT: vor.vv v8, v8, v9
1288 ; RV64-NEXT: vsrl.vi v9, v8, 16
1289 ; RV64-NEXT: vor.vv v8, v8, v9
1291 ; RV64-NEXT: vsrl.vx v9, v8, a0
1292 ; RV64-NEXT: vor.vv v8, v8, v9
1293 ; RV64-NEXT: vnot.v v8, v8
1298 ; RV64-NEXT: vsrl.vi v9, v8, 1
1300 ; RV64-NEXT: vsub.vv v8, v8, v9
1301 ; RV64-NEXT: vand.vx v9, v8, a1
1302 ; RV64-NEXT: vsrl.vi v8, v8, 2
1303 ; RV64-NEXT: vand.vx v8, v8, a1
1304 ; RV64-NEXT: vadd.vv v8, v9, v8
1309 ; RV64-NEXT: vsrl.vi v9, v8, 4
1310 ; RV64-NEXT: vadd.vv v8, v8, v9
1311 ; RV64-NEXT: vand.vx v8, v8, a0
1312 ; RV64-NEXT: vmul.vx v8, v8, a1
1314 ; RV64-NEXT: vsrl.vx v8, v8, a0
1343 ; RV32-NEXT: vsrl.vi v10, v8, 1
1344 ; RV32-NEXT: vor.vv v8, v8, v10
1345 ; RV32-NEXT: vsrl.vi v10, v8, 2
1346 ; RV32-NEXT: vor.vv v8, v8, v10
1347 ; RV32-NEXT: vsrl.vi v10, v8, 4
1348 ; RV32-NEXT: vor.vv v8, v8, v10
1349 ; RV32-NEXT: vsrl.vi v10, v8, 8
1350 ; RV32-NEXT: vor.vv v8, v8, v10
1351 ; RV32-NEXT: vsrl.vi v10, v8, 16
1352 ; RV32-NEXT: vor.vv v8, v8, v10
1354 ; RV32-NEXT: vsrl.vx v10, v8, a0
1355 ; RV32-NEXT: vor.vv v8, v8, v10
1358 ; RV32-NEXT: vnot.v v8, v8
1360 ; RV32-NEXT: vsrl.vi v14, v8, 1
1362 ; RV32-NEXT: vsub.vv v8, v8, v10
1363 ; RV32-NEXT: vand.vv v10, v8, v12
1364 ; RV32-NEXT: vsrl.vi v8, v8, 2
1365 ; RV32-NEXT: vand.vv v8, v8, v12
1366 ; RV32-NEXT: vadd.vv v8, v10, v8
1369 ; RV32-NEXT: vsrl.vi v14, v8, 4
1370 ; RV32-NEXT: vadd.vv v8, v8, v14
1371 ; RV32-NEXT: vand.vv v8, v8, v10
1372 ; RV32-NEXT: vmul.vv v8, v8, v12
1374 ; RV32-NEXT: vsrl.vx v8, v8, a0
1381 ; RV64-NEXT: vsrl.vi v10, v8, 1
1382 ; RV64-NEXT: vor.vv v8, v8, v10
1383 ; RV64-NEXT: vsrl.vi v10, v8, 2
1384 ; RV64-NEXT: vor.vv v8, v8, v10
1385 ; RV64-NEXT: vsrl.vi v10, v8, 4
1386 ; RV64-NEXT: vor.vv v8, v8, v10
1387 ; RV64-NEXT: vsrl.vi v10, v8, 8
1388 ; RV64-NEXT: vor.vv v8, v8, v10
1389 ; RV64-NEXT: vsrl.vi v10, v8, 16
1390 ; RV64-NEXT: vor.vv v8, v8, v10
1392 ; RV64-NEXT: vsrl.vx v10, v8, a0
1393 ; RV64-NEXT: vor.vv v8, v8, v10
1394 ; RV64-NEXT: vnot.v v8, v8
1399 ; RV64-NEXT: vsrl.vi v10, v8, 1
1401 ; RV64-NEXT: vsub.vv v8, v8, v10
1402 ; RV64-NEXT: vand.vx v10, v8, a1
1403 ; RV64-NEXT: vsrl.vi v8, v8, 2
1404 ; RV64-NEXT: vand.vx v8, v8, a1
1405 ; RV64-NEXT: vadd.vv v8, v10, v8
1410 ; RV64-NEXT: vsrl.vi v10, v8, 4
1411 ; RV64-NEXT: vadd.vv v8, v8, v10
1412 ; RV64-NEXT: vand.vx v8, v8, a0
1413 ; RV64-NEXT: vmul.vx v8, v8, a1
1415 ; RV64-NEXT: vsrl.vx v8, v8, a0
1444 ; RV32-NEXT: vsrl.vi v12, v8, 1
1445 ; RV32-NEXT: vor.vv v8, v8, v12
1446 ; RV32-NEXT: vsrl.vi v12, v8, 2
1447 ; RV32-NEXT: vor.vv v8, v8, v12
1448 ; RV32-NEXT: vsrl.vi v12, v8, 4
1449 ; RV32-NEXT: vor.vv v8, v8, v12
1450 ; RV32-NEXT: vsrl.vi v12, v8, 8
1451 ; RV32-NEXT: vor.vv v8, v8, v12
1452 ; RV32-NEXT: vsrl.vi v12, v8, 16
1453 ; RV32-NEXT: vor.vv v8, v8, v12
1455 ; RV32-NEXT: vsrl.vx v12, v8, a0
1456 ; RV32-NEXT: vor.vv v8, v8, v12
1459 ; RV32-NEXT: vnot.v v8, v8
1461 ; RV32-NEXT: vsrl.vi v20, v8, 1
1463 ; RV32-NEXT: vsub.vv v8, v8, v12
1464 ; RV32-NEXT: vand.vv v12, v8, v16
1465 ; RV32-NEXT: vsrl.vi v8, v8, 2
1466 ; RV32-NEXT: vand.vv v8, v8, v16
1467 ; RV32-NEXT: vadd.vv v8, v12, v8
1470 ; RV32-NEXT: vsrl.vi v20, v8, 4
1471 ; RV32-NEXT: vadd.vv v8, v8, v20
1472 ; RV32-NEXT: vand.vv v8, v8, v12
1473 ; RV32-NEXT: vmul.vv v8, v8, v16
1475 ; RV32-NEXT: vsrl.vx v8, v8, a0
1482 ; RV64-NEXT: vsrl.vi v12, v8, 1
1483 ; RV64-NEXT: vor.vv v8, v8, v12
1484 ; RV64-NEXT: vsrl.vi v12, v8, 2
1485 ; RV64-NEXT: vor.vv v8, v8, v12
1486 ; RV64-NEXT: vsrl.vi v12, v8, 4
1487 ; RV64-NEXT: vor.vv v8, v8, v12
1488 ; RV64-NEXT: vsrl.vi v12, v8, 8
1489 ; RV64-NEXT: vor.vv v8, v8, v12
1490 ; RV64-NEXT: vsrl.vi v12, v8, 16
1491 ; RV64-NEXT: vor.vv v8, v8, v12
1493 ; RV64-NEXT: vsrl.vx v12, v8, a0
1494 ; RV64-NEXT: vor.vv v8, v8, v12
1495 ; RV64-NEXT: vnot.v v8, v8
1500 ; RV64-NEXT: vsrl.vi v12, v8, 1
1502 ; RV64-NEXT: vsub.vv v8, v8, v12
1503 ; RV64-NEXT: vand.vx v12, v8, a1
1504 ; RV64-NEXT: vsrl.vi v8, v8, 2
1505 ; RV64-NEXT: vand.vx v8, v8, a1
1506 ; RV64-NEXT: vadd.vv v8, v12, v8
1511 ; RV64-NEXT: vsrl.vi v12, v8, 4
1512 ; RV64-NEXT: vadd.vv v8, v8, v12
1513 ; RV64-NEXT: vand.vx v8, v8, a0
1514 ; RV64-NEXT: vmul.vx v8, v8, a1
1516 ; RV64-NEXT: vsrl.vx v8, v8, a0
1545 ; RV32-NEXT: vsrl.vi v16, v8, 1
1546 ; RV32-NEXT: vor.vv v8, v8, v16
1547 ; RV32-NEXT: vsrl.vi v16, v8, 2
1548 ; RV32-NEXT: vor.vv v8, v8, v16
1549 ; RV32-NEXT: vsrl.vi v16, v8, 4
1550 ; RV32-NEXT: vor.vv v8, v8, v16
1551 ; RV32-NEXT: vsrl.vi v16, v8, 8
1552 ; RV32-NEXT: vor.vv v8, v8, v16
1553 ; RV32-NEXT: vsrl.vi v16, v8, 16
1554 ; RV32-NEXT: vor.vv v8, v8, v16
1556 ; RV32-NEXT: vsrl.vx v16, v8, a0
1557 ; RV32-NEXT: vor.vv v8, v8, v16
1560 ; RV32-NEXT: vnot.v v8, v8
1562 ; RV32-NEXT: vsrl.vi v0, v8, 1
1564 ; RV32-NEXT: vsub.vv v8, v8, v16
1565 ; RV32-NEXT: vand.vv v16, v8, v24
1566 ; RV32-NEXT: vsrl.vi v8, v8, 2
1567 ; RV32-NEXT: vand.vv v8, v8, v24
1568 ; RV32-NEXT: vadd.vv v8, v16, v8
1571 ; RV32-NEXT: vsrl.vi v0, v8, 4
1572 ; RV32-NEXT: vadd.vv v8, v8, v0
1573 ; RV32-NEXT: vand.vv v8, v8, v16
1574 ; RV32-NEXT: vmul.vv v8, v8, v24
1576 ; RV32-NEXT: vsrl.vx v8, v8, a0
1583 ; RV64-NEXT: vsrl.vi v16, v8, 1
1584 ; RV64-NEXT: vor.vv v8, v8, v16
1585 ; RV64-NEXT: vsrl.vi v16, v8, 2
1586 ; RV64-NEXT: vor.vv v8, v8, v16
1587 ; RV64-NEXT: vsrl.vi v16, v8, 4
1588 ; RV64-NEXT: vor.vv v8, v8, v16
1589 ; RV64-NEXT: vsrl.vi v16, v8, 8
1590 ; RV64-NEXT: vor.vv v8, v8, v16
1591 ; RV64-NEXT: vsrl.vi v16, v8, 16
1592 ; RV64-NEXT: vor.vv v8, v8, v16
1594 ; RV64-NEXT: vsrl.vx v16, v8, a0
1595 ; RV64-NEXT: vor.vv v8, v8, v16
1596 ; RV64-NEXT: vnot.v v8, v8
1601 ; RV64-NEXT: vsrl.vi v16, v8, 1
1603 ; RV64-NEXT: vsub.vv v8, v8, v16
1604 ; RV64-NEXT: vand.vx v16, v8, a1
1605 ; RV64-NEXT: vsrl.vi v8, v8, 2
1606 ; RV64-NEXT: vand.vx v8, v8, a1
1607 ; RV64-NEXT: vadd.vv v8, v16, v8
1612 ; RV64-NEXT: vsrl.vi v16, v8, 4
1613 ; RV64-NEXT: vadd.vv v8, v8, v16
1614 ; RV64-NEXT: vand.vx v8, v8, a0
1615 ; RV64-NEXT: vmul.vx v8, v8, a1
1617 ; RV64-NEXT: vsrl.vx v8, v8, a0
1628 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1629 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1630 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
1631 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1632 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1633 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1634 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
1635 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1638 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
1640 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
1641 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
1642 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
1643 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
1644 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1645 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
1646 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
1652 ; CHECK-D-NEXT: vzext.vf4 v9, v8
1653 ; CHECK-D-NEXT: vfcvt.f.xu.v v8, v9
1655 ; CHECK-D-NEXT: vnsrl.wi v8, v8, 23
1657 ; CHECK-D-NEXT: vncvt.x.x.w v8, v8
1659 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1669 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1670 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1671 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
1672 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1673 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1674 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1675 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
1676 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1679 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
1681 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
1682 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
1683 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
1684 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
1685 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1686 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
1687 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
1693 ; CHECK-D-NEXT: vzext.vf4 v9, v8
1694 ; CHECK-D-NEXT: vfcvt.f.xu.v v8, v9
1696 ; CHECK-D-NEXT: vnsrl.wi v8, v8, 23
1698 ; CHECK-D-NEXT: vncvt.x.x.w v8, v8
1700 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1710 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1711 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1712 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
1713 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1714 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1715 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1716 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
1717 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1720 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
1722 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
1723 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
1724 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
1725 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
1726 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1727 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
1728 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
1734 ; CHECK-D-NEXT: vzext.vf4 v10, v8
1735 ; CHECK-D-NEXT: vfcvt.f.xu.v v8, v10
1737 ; CHECK-D-NEXT: vnsrl.wi v10, v8, 23
1739 ; CHECK-D-NEXT: vncvt.x.x.w v8, v10
1741 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1751 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1752 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1753 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 2
1754 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1755 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1756 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v9
1757 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
1758 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 1
1761 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v9
1763 ; CHECK-ZVE64X-NEXT: vand.vx v9, v8, a0
1764 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
1765 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
1766 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v9, v8
1767 ; CHECK-ZVE64X-NEXT: vsrl.vi v9, v8, 4
1768 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v9
1769 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
1775 ; CHECK-D-NEXT: vzext.vf4 v12, v8
1776 ; CHECK-D-NEXT: vfcvt.f.xu.v v8, v12
1778 ; CHECK-D-NEXT: vnsrl.wi v12, v8, 23
1780 ; CHECK-D-NEXT: vncvt.x.x.w v8, v12
1782 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1792 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 1
1793 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
1794 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 2
1795 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
1796 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 4
1797 ; CHECK-ZVE64X-NEXT: vor.vv v8, v8, v10
1798 ; CHECK-ZVE64X-NEXT: vnot.v v8, v8
1799 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 1
1802 ; CHECK-ZVE64X-NEXT: vsub.vv v8, v8, v10
1804 ; CHECK-ZVE64X-NEXT: vand.vx v10, v8, a0
1805 ; CHECK-ZVE64X-NEXT: vsrl.vi v8, v8, 2
1806 ; CHECK-ZVE64X-NEXT: vand.vx v8, v8, a0
1807 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v10, v8
1808 ; CHECK-ZVE64X-NEXT: vsrl.vi v10, v8, 4
1809 ; CHECK-ZVE64X-NEXT: vadd.vv v8, v8, v10
1810 ; CHECK-ZVE64X-NEXT: vand.vi v8, v8, 15
1816 ; CHECK-D-NEXT: vzext.vf4 v16, v8
1817 ; CHECK-D-NEXT: vfcvt.f.xu.v v8, v16
1819 ; CHECK-D-NEXT: vnsrl.wi v16, v8, 23
1821 ; CHECK-D-NEXT: vncvt.x.x.w v8, v16
1823 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1833 ; CHECK-NEXT: vsrl.vi v12, v8, 1
1834 ; CHECK-NEXT: vor.vv v8, v8, v12
1835 ; CHECK-NEXT: vsrl.vi v12, v8, 2
1836 ; CHECK-NEXT: vor.vv v8, v8, v12
1837 ; CHECK-NEXT: vsrl.vi v12, v8, 4
1838 ; CHECK-NEXT: vor.vv v8, v8, v12
1839 ; CHECK-NEXT: vnot.v v8, v8
1840 ; CHECK-NEXT: vsrl.vi v12, v8, 1
1843 ; CHECK-NEXT: vsub.vv v8, v8, v12
1845 ; CHECK-NEXT: vand.vx v12, v8, a0
1846 ; CHECK-NEXT: vsrl.vi v8, v8, 2
1847 ; CHECK-NEXT: vand.vx v8, v8, a0
1848 ; CHECK-NEXT: vadd.vv v8, v12, v8
1849 ; CHECK-NEXT: vsrl.vi v12, v8, 4
1850 ; CHECK-NEXT: vadd.vv v8, v8, v12
1851 ; CHECK-NEXT: vand.vi v8, v8, 15
1861 ; CHECK-NEXT: vsrl.vi v16, v8, 1
1862 ; CHECK-NEXT: vor.vv v8, v8, v16
1863 ; CHECK-NEXT: vsrl.vi v16, v8, 2
1864 ; CHECK-NEXT: vor.vv v8, v8, v16
1865 ; CHECK-NEXT: vsrl.vi v16, v8, 4
1866 ; CHECK-NEXT: vor.vv v8, v8, v16
1867 ; CHECK-NEXT: vnot.v v8, v8
1868 ; CHECK-NEXT: vsrl.vi v16, v8, 1
1871 ; CHECK-NEXT: vsub.vv v8, v8, v16
1873 ; CHECK-NEXT: vand.vx v16, v8, a0
1874 ; CHECK-NEXT: vsrl.vi v8, v8, 2
1875 ; CHECK-NEXT: vand.vx v8, v8, a0
1876 ; CHECK-NEXT: vadd.vv v8, v16, v8
1877 ; CHECK-NEXT: vsrl.vi v16, v8, 4
1878 ; CHECK-NEXT: vadd.vv v8, v8, v16
1879 ; CHECK-NEXT: vand.vi v8, v8, 15
1889 ; RV32I-NEXT: vsrl.vi v9, v8, 1
1890 ; RV32I-NEXT: vor.vv v8, v8, v9
1891 ; RV32I-NEXT: vsrl.vi v9, v8, 2
1892 ; RV32I-NEXT: vor.vv v8, v8, v9
1893 ; RV32I-NEXT: vsrl.vi v9, v8, 4
1894 ; RV32I-NEXT: vor.vv v8, v8, v9
1895 ; RV32I-NEXT: vsrl.vi v9, v8, 8
1896 ; RV32I-NEXT: vor.vv v8, v8, v9
1897 ; RV32I-NEXT: vnot.v v8, v8
1898 ; RV32I-NEXT: vsrl.vi v9, v8, 1
1902 ; RV32I-NEXT: vsub.vv v8, v8, v9
1905 ; RV32I-NEXT: vand.vx v9, v8, a0
1906 ; RV32I-NEXT: vsrl.vi v8, v8, 2
1907 ; RV32I-NEXT: vand.vx v8, v8, a0
1908 ; RV32I-NEXT: vadd.vv v8, v9, v8
1909 ; RV32I-NEXT: vsrl.vi v9, v8, 4
1910 ; RV32I-NEXT: vadd.vv v8, v8, v9
1913 ; RV32I-NEXT: vand.vx v8, v8, a0
1915 ; RV32I-NEXT: vmul.vx v8, v8, a0
1916 ; RV32I-NEXT: vsrl.vi v8, v8, 8
1922 ; RV64I-NEXT: vsrl.vi v9, v8, 1
1923 ; RV64I-NEXT: vor.vv v8, v8, v9
1924 ; RV64I-NEXT: vsrl.vi v9, v8, 2
1925 ; RV64I-NEXT: vor.vv v8, v8, v9
1926 ; RV64I-NEXT: vsrl.vi v9, v8, 4
1927 ; RV64I-NEXT: vor.vv v8, v8, v9
1928 ; RV64I-NEXT: vsrl.vi v9, v8, 8
1929 ; RV64I-NEXT: vor.vv v8, v8, v9
1930 ; RV64I-NEXT: vnot.v v8, v8
1931 ; RV64I-NEXT: vsrl.vi v9, v8, 1
1935 ; RV64I-NEXT: vsub.vv v8, v8, v9
1938 ; RV64I-NEXT: vand.vx v9, v8, a0
1939 ; RV64I-NEXT: vsrl.vi v8, v8, 2
1940 ; RV64I-NEXT: vand.vx v8, v8, a0
1941 ; RV64I-NEXT: vadd.vv v8, v9, v8
1942 ; RV64I-NEXT: vsrl.vi v9, v8, 4
1943 ; RV64I-NEXT: vadd.vv v8, v8, v9
1946 ; RV64I-NEXT: vand.vx v8, v8, a0
1948 ; RV64I-NEXT: vmul.vx v8, v8, a0
1949 ; RV64I-NEXT: vsrl.vi v8, v8, 8
1955 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
1956 ; CHECK-D-NEXT: vnsrl.wi v8, v9, 23
1958 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
1968 ; RV32I-NEXT: vsrl.vi v9, v8, 1
1969 ; RV32I-NEXT: vor.vv v8, v8, v9
1970 ; RV32I-NEXT: vsrl.vi v9, v8, 2
1971 ; RV32I-NEXT: vor.vv v8, v8, v9
1972 ; RV32I-NEXT: vsrl.vi v9, v8, 4
1973 ; RV32I-NEXT: vor.vv v8, v8, v9
1974 ; RV32I-NEXT: vsrl.vi v9, v8, 8
1975 ; RV32I-NEXT: vor.vv v8, v8, v9
1976 ; RV32I-NEXT: vnot.v v8, v8
1977 ; RV32I-NEXT: vsrl.vi v9, v8, 1
1981 ; RV32I-NEXT: vsub.vv v8, v8, v9
1984 ; RV32I-NEXT: vand.vx v9, v8, a0
1985 ; RV32I-NEXT: vsrl.vi v8, v8, 2
1986 ; RV32I-NEXT: vand.vx v8, v8, a0
1987 ; RV32I-NEXT: vadd.vv v8, v9, v8
1988 ; RV32I-NEXT: vsrl.vi v9, v8, 4
1989 ; RV32I-NEXT: vadd.vv v8, v8, v9
1992 ; RV32I-NEXT: vand.vx v8, v8, a0
1994 ; RV32I-NEXT: vmul.vx v8, v8, a0
1995 ; RV32I-NEXT: vsrl.vi v8, v8, 8
2001 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2002 ; RV64I-NEXT: vor.vv v8, v8, v9
2003 ; RV64I-NEXT: vsrl.vi v9, v8, 2
2004 ; RV64I-NEXT: vor.vv v8, v8, v9
2005 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2006 ; RV64I-NEXT: vor.vv v8, v8, v9
2007 ; RV64I-NEXT: vsrl.vi v9, v8, 8
2008 ; RV64I-NEXT: vor.vv v8, v8, v9
2009 ; RV64I-NEXT: vnot.v v8, v8
2010 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2014 ; RV64I-NEXT: vsub.vv v8, v8, v9
2017 ; RV64I-NEXT: vand.vx v9, v8, a0
2018 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2019 ; RV64I-NEXT: vand.vx v8, v8, a0
2020 ; RV64I-NEXT: vadd.vv v8, v9, v8
2021 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2022 ; RV64I-NEXT: vadd.vv v8, v8, v9
2025 ; RV64I-NEXT: vand.vx v8, v8, a0
2027 ; RV64I-NEXT: vmul.vx v8, v8, a0
2028 ; RV64I-NEXT: vsrl.vi v8, v8, 8
2034 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
2035 ; CHECK-D-NEXT: vnsrl.wi v8, v9, 23
2037 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
2047 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2048 ; RV32I-NEXT: vor.vv v8, v8, v9
2049 ; RV32I-NEXT: vsrl.vi v9, v8, 2
2050 ; RV32I-NEXT: vor.vv v8, v8, v9
2051 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2052 ; RV32I-NEXT: vor.vv v8, v8, v9
2053 ; RV32I-NEXT: vsrl.vi v9, v8, 8
2054 ; RV32I-NEXT: vor.vv v8, v8, v9
2055 ; RV32I-NEXT: vnot.v v8, v8
2056 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2060 ; RV32I-NEXT: vsub.vv v8, v8, v9
2063 ; RV32I-NEXT: vand.vx v9, v8, a0
2064 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2065 ; RV32I-NEXT: vand.vx v8, v8, a0
2066 ; RV32I-NEXT: vadd.vv v8, v9, v8
2067 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2068 ; RV32I-NEXT: vadd.vv v8, v8, v9
2071 ; RV32I-NEXT: vand.vx v8, v8, a0
2073 ; RV32I-NEXT: vmul.vx v8, v8, a0
2074 ; RV32I-NEXT: vsrl.vi v8, v8, 8
2080 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2081 ; RV64I-NEXT: vor.vv v8, v8, v9
2082 ; RV64I-NEXT: vsrl.vi v9, v8, 2
2083 ; RV64I-NEXT: vor.vv v8, v8, v9
2084 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2085 ; RV64I-NEXT: vor.vv v8, v8, v9
2086 ; RV64I-NEXT: vsrl.vi v9, v8, 8
2087 ; RV64I-NEXT: vor.vv v8, v8, v9
2088 ; RV64I-NEXT: vnot.v v8, v8
2089 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2093 ; RV64I-NEXT: vsub.vv v8, v8, v9
2096 ; RV64I-NEXT: vand.vx v9, v8, a0
2097 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2098 ; RV64I-NEXT: vand.vx v8, v8, a0
2099 ; RV64I-NEXT: vadd.vv v8, v9, v8
2100 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2101 ; RV64I-NEXT: vadd.vv v8, v8, v9
2104 ; RV64I-NEXT: vand.vx v8, v8, a0
2106 ; RV64I-NEXT: vmul.vx v8, v8, a0
2107 ; RV64I-NEXT: vsrl.vi v8, v8, 8
2113 ; CHECK-D-NEXT: vfwcvt.f.xu.v v10, v8
2114 ; CHECK-D-NEXT: vnsrl.wi v8, v10, 23
2116 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
2126 ; RV32I-NEXT: vsrl.vi v10, v8, 1
2127 ; RV32I-NEXT: vor.vv v8, v8, v10
2128 ; RV32I-NEXT: vsrl.vi v10, v8, 2
2129 ; RV32I-NEXT: vor.vv v8, v8, v10
2130 ; RV32I-NEXT: vsrl.vi v10, v8, 4
2131 ; RV32I-NEXT: vor.vv v8, v8, v10
2132 ; RV32I-NEXT: vsrl.vi v10, v8, 8
2133 ; RV32I-NEXT: vor.vv v8, v8, v10
2134 ; RV32I-NEXT: vnot.v v8, v8
2135 ; RV32I-NEXT: vsrl.vi v10, v8, 1
2139 ; RV32I-NEXT: vsub.vv v8, v8, v10
2142 ; RV32I-NEXT: vand.vx v10, v8, a0
2143 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2144 ; RV32I-NEXT: vand.vx v8, v8, a0
2145 ; RV32I-NEXT: vadd.vv v8, v10, v8
2146 ; RV32I-NEXT: vsrl.vi v10, v8, 4
2147 ; RV32I-NEXT: vadd.vv v8, v8, v10
2150 ; RV32I-NEXT: vand.vx v8, v8, a0
2152 ; RV32I-NEXT: vmul.vx v8, v8, a0
2153 ; RV32I-NEXT: vsrl.vi v8, v8, 8
2159 ; RV64I-NEXT: vsrl.vi v10, v8, 1
2160 ; RV64I-NEXT: vor.vv v8, v8, v10
2161 ; RV64I-NEXT: vsrl.vi v10, v8, 2
2162 ; RV64I-NEXT: vor.vv v8, v8, v10
2163 ; RV64I-NEXT: vsrl.vi v10, v8, 4
2164 ; RV64I-NEXT: vor.vv v8, v8, v10
2165 ; RV64I-NEXT: vsrl.vi v10, v8, 8
2166 ; RV64I-NEXT: vor.vv v8, v8, v10
2167 ; RV64I-NEXT: vnot.v v8, v8
2168 ; RV64I-NEXT: vsrl.vi v10, v8, 1
2172 ; RV64I-NEXT: vsub.vv v8, v8, v10
2175 ; RV64I-NEXT: vand.vx v10, v8, a0
2176 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2177 ; RV64I-NEXT: vand.vx v8, v8, a0
2178 ; RV64I-NEXT: vadd.vv v8, v10, v8
2179 ; RV64I-NEXT: vsrl.vi v10, v8, 4
2180 ; RV64I-NEXT: vadd.vv v8, v8, v10
2183 ; RV64I-NEXT: vand.vx v8, v8, a0
2185 ; RV64I-NEXT: vmul.vx v8, v8, a0
2186 ; RV64I-NEXT: vsrl.vi v8, v8, 8
2192 ; CHECK-D-NEXT: vfwcvt.f.xu.v v12, v8
2193 ; CHECK-D-NEXT: vnsrl.wi v8, v12, 23
2195 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
2205 ; RV32I-NEXT: vsrl.vi v12, v8, 1
2206 ; RV32I-NEXT: vor.vv v8, v8, v12
2207 ; RV32I-NEXT: vsrl.vi v12, v8, 2
2208 ; RV32I-NEXT: vor.vv v8, v8, v12
2209 ; RV32I-NEXT: vsrl.vi v12, v8, 4
2210 ; RV32I-NEXT: vor.vv v8, v8, v12
2211 ; RV32I-NEXT: vsrl.vi v12, v8, 8
2212 ; RV32I-NEXT: vor.vv v8, v8, v12
2213 ; RV32I-NEXT: vnot.v v8, v8
2214 ; RV32I-NEXT: vsrl.vi v12, v8, 1
2218 ; RV32I-NEXT: vsub.vv v8, v8, v12
2221 ; RV32I-NEXT: vand.vx v12, v8, a0
2222 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2223 ; RV32I-NEXT: vand.vx v8, v8, a0
2224 ; RV32I-NEXT: vadd.vv v8, v12, v8
2225 ; RV32I-NEXT: vsrl.vi v12, v8, 4
2226 ; RV32I-NEXT: vadd.vv v8, v8, v12
2229 ; RV32I-NEXT: vand.vx v8, v8, a0
2231 ; RV32I-NEXT: vmul.vx v8, v8, a0
2232 ; RV32I-NEXT: vsrl.vi v8, v8, 8
2238 ; RV64I-NEXT: vsrl.vi v12, v8, 1
2239 ; RV64I-NEXT: vor.vv v8, v8, v12
2240 ; RV64I-NEXT: vsrl.vi v12, v8, 2
2241 ; RV64I-NEXT: vor.vv v8, v8, v12
2242 ; RV64I-NEXT: vsrl.vi v12, v8, 4
2243 ; RV64I-NEXT: vor.vv v8, v8, v12
2244 ; RV64I-NEXT: vsrl.vi v12, v8, 8
2245 ; RV64I-NEXT: vor.vv v8, v8, v12
2246 ; RV64I-NEXT: vnot.v v8, v8
2247 ; RV64I-NEXT: vsrl.vi v12, v8, 1
2251 ; RV64I-NEXT: vsub.vv v8, v8, v12
2254 ; RV64I-NEXT: vand.vx v12, v8, a0
2255 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2256 ; RV64I-NEXT: vand.vx v8, v8, a0
2257 ; RV64I-NEXT: vadd.vv v8, v12, v8
2258 ; RV64I-NEXT: vsrl.vi v12, v8, 4
2259 ; RV64I-NEXT: vadd.vv v8, v8, v12
2262 ; RV64I-NEXT: vand.vx v8, v8, a0
2264 ; RV64I-NEXT: vmul.vx v8, v8, a0
2265 ; RV64I-NEXT: vsrl.vi v8, v8, 8
2271 ; CHECK-D-NEXT: vfwcvt.f.xu.v v16, v8
2272 ; CHECK-D-NEXT: vnsrl.wi v8, v16, 23
2274 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
2284 ; RV32-NEXT: vsrl.vi v16, v8, 1
2285 ; RV32-NEXT: vor.vv v8, v8, v16
2286 ; RV32-NEXT: vsrl.vi v16, v8, 2
2287 ; RV32-NEXT: vor.vv v8, v8, v16
2288 ; RV32-NEXT: vsrl.vi v16, v8, 4
2289 ; RV32-NEXT: vor.vv v8, v8, v16
2290 ; RV32-NEXT: vsrl.vi v16, v8, 8
2291 ; RV32-NEXT: vor.vv v8, v8, v16
2292 ; RV32-NEXT: vnot.v v8, v8
2293 ; RV32-NEXT: vsrl.vi v16, v8, 1
2297 ; RV32-NEXT: vsub.vv v8, v8, v16
2300 ; RV32-NEXT: vand.vx v16, v8, a0
2301 ; RV32-NEXT: vsrl.vi v8, v8, 2
2302 ; RV32-NEXT: vand.vx v8, v8, a0
2303 ; RV32-NEXT: vadd.vv v8, v16, v8
2304 ; RV32-NEXT: vsrl.vi v16, v8, 4
2305 ; RV32-NEXT: vadd.vv v8, v8, v16
2308 ; RV32-NEXT: vand.vx v8, v8, a0
2310 ; RV32-NEXT: vmul.vx v8, v8, a0
2311 ; RV32-NEXT: vsrl.vi v8, v8, 8
2317 ; RV64-NEXT: vsrl.vi v16, v8, 1
2318 ; RV64-NEXT: vor.vv v8, v8, v16
2319 ; RV64-NEXT: vsrl.vi v16, v8, 2
2320 ; RV64-NEXT: vor.vv v8, v8, v16
2321 ; RV64-NEXT: vsrl.vi v16, v8, 4
2322 ; RV64-NEXT: vor.vv v8, v8, v16
2323 ; RV64-NEXT: vsrl.vi v16, v8, 8
2324 ; RV64-NEXT: vor.vv v8, v8, v16
2325 ; RV64-NEXT: vnot.v v8, v8
2326 ; RV64-NEXT: vsrl.vi v16, v8, 1
2330 ; RV64-NEXT: vsub.vv v8, v8, v16
2333 ; RV64-NEXT: vand.vx v16, v8, a0
2334 ; RV64-NEXT: vsrl.vi v8, v8, 2
2335 ; RV64-NEXT: vand.vx v8, v8, a0
2336 ; RV64-NEXT: vadd.vv v8, v16, v8
2337 ; RV64-NEXT: vsrl.vi v16, v8, 4
2338 ; RV64-NEXT: vadd.vv v8, v8, v16
2341 ; RV64-NEXT: vand.vx v8, v8, a0
2343 ; RV64-NEXT: vmul.vx v8, v8, a0
2344 ; RV64-NEXT: vsrl.vi v8, v8, 8
2354 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2355 ; RV32I-NEXT: vor.vv v8, v8, v9
2356 ; RV32I-NEXT: vsrl.vi v9, v8, 2
2357 ; RV32I-NEXT: vor.vv v8, v8, v9
2358 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2359 ; RV32I-NEXT: vor.vv v8, v8, v9
2360 ; RV32I-NEXT: vsrl.vi v9, v8, 8
2361 ; RV32I-NEXT: vor.vv v8, v8, v9
2362 ; RV32I-NEXT: vsrl.vi v9, v8, 16
2363 ; RV32I-NEXT: vor.vv v8, v8, v9
2364 ; RV32I-NEXT: vnot.v v8, v8
2365 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2369 ; RV32I-NEXT: vsub.vv v8, v8, v9
2372 ; RV32I-NEXT: vand.vx v9, v8, a0
2373 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2374 ; RV32I-NEXT: vand.vx v8, v8, a0
2375 ; RV32I-NEXT: vadd.vv v8, v9, v8
2376 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2377 ; RV32I-NEXT: vadd.vv v8, v8, v9
2380 ; RV32I-NEXT: vand.vx v8, v8, a0
2383 ; RV32I-NEXT: vmul.vx v8, v8, a0
2384 ; RV32I-NEXT: vsrl.vi v8, v8, 24
2390 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2391 ; RV64I-NEXT: vor.vv v8, v8, v9
2392 ; RV64I-NEXT: vsrl.vi v9, v8, 2
2393 ; RV64I-NEXT: vor.vv v8, v8, v9
2394 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2395 ; RV64I-NEXT: vor.vv v8, v8, v9
2396 ; RV64I-NEXT: vsrl.vi v9, v8, 8
2397 ; RV64I-NEXT: vor.vv v8, v8, v9
2398 ; RV64I-NEXT: vsrl.vi v9, v8, 16
2399 ; RV64I-NEXT: vor.vv v8, v8, v9
2400 ; RV64I-NEXT: vnot.v v8, v8
2401 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2405 ; RV64I-NEXT: vsub.vv v8, v8, v9
2408 ; RV64I-NEXT: vand.vx v9, v8, a0
2409 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2410 ; RV64I-NEXT: vand.vx v8, v8, a0
2411 ; RV64I-NEXT: vadd.vv v8, v9, v8
2412 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2413 ; RV64I-NEXT: vadd.vv v8, v8, v9
2416 ; RV64I-NEXT: vand.vx v8, v8, a0
2419 ; RV64I-NEXT: vmul.vx v8, v8, a0
2420 ; RV64I-NEXT: vsrl.vi v8, v8, 24
2426 ; CHECK-D-NEXT: vfwcvt.f.xu.v v9, v8
2429 ; CHECK-D-NEXT: vsrl.vx v8, v9, a0
2431 ; CHECK-D-NEXT: vncvt.x.x.w v8, v8
2433 ; CHECK-D-NEXT: vrsub.vx v8, v8, a0
2443 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2444 ; RV32I-NEXT: vor.vv v8, v8, v9
2445 ; RV32I-NEXT: vsrl.vi v9, v8, 2
2446 ; RV32I-NEXT: vor.vv v8, v8, v9
2447 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2448 ; RV32I-NEXT: vor.vv v8, v8, v9
2449 ; RV32I-NEXT: vsrl.vi v9, v8, 8
2450 ; RV32I-NEXT: vor.vv v8, v8, v9
2451 ; RV32I-NEXT: vsrl.vi v9, v8, 16
2452 ; RV32I-NEXT: vor.vv v8, v8, v9
2453 ; RV32I-NEXT: vnot.v v8, v8
2454 ; RV32I-NEXT: vsrl.vi v9, v8, 1
2458 ; RV32I-NEXT: vsub.vv v8, v8, v9
2461 ; RV32I-NEXT: vand.vx v9, v8, a0
2462 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2463 ; RV32I-NEXT: vand.vx v8, v8, a0
2464 ; RV32I-NEXT: vadd.vv v8, v9, v8
2465 ; RV32I-NEXT: vsrl.vi v9, v8, 4
2466 ; RV32I-NEXT: vadd.vv v8, v8, v9
2469 ; RV32I-NEXT: vand.vx v8, v8, a0
2472 ; RV32I-NEXT: vmul.vx v8, v8, a0
2473 ; RV32I-NEXT: vsrl.vi v8, v8, 24
2479 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2480 ; RV64I-NEXT: vor.vv v8, v8, v9
2481 ; RV64I-NEXT: vsrl.vi v9, v8, 2
2482 ; RV64I-NEXT: vor.vv v8, v8, v9
2483 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2484 ; RV64I-NEXT: vor.vv v8, v8, v9
2485 ; RV64I-NEXT: vsrl.vi v9, v8, 8
2486 ; RV64I-NEXT: vor.vv v8, v8, v9
2487 ; RV64I-NEXT: vsrl.vi v9, v8, 16
2488 ; RV64I-NEXT: vor.vv v8, v8, v9
2489 ; RV64I-NEXT: vnot.v v8, v8
2490 ; RV64I-NEXT: vsrl.vi v9, v8, 1
2494 ; RV64I-NEXT: vsub.vv v8, v8, v9
2497 ; RV64I-NEXT: vand.vx v9, v8, a0
2498 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2499 ; RV64I-NEXT: vand.vx v8, v8, a0
2500 ; RV64I-NEXT: vadd.vv v8, v9, v8
2501 ; RV64I-NEXT: vsrl.vi v9, v8, 4
2502 ; RV64I-NEXT: vadd.vv v8, v8, v9
2505 ; RV64I-NEXT: vand.vx v8, v8, a0
2508 ; RV64I-NEXT: vmul.vx v8, v8, a0
2509 ; RV64I-NEXT: vsrl.vi v8, v8, 24
2515 ; CHECK-D-NEXT: vfwcvt.f.xu.v v10, v8
2518 ; CHECK-D-NEXT: vsrl.vx v8, v10, a0
2520 ; CHECK-D-NEXT: vncvt.x.x.w v10, v8
2522 ; CHECK-D-NEXT: vrsub.vx v8, v10, a0
2532 ; RV32I-NEXT: vsrl.vi v10, v8, 1
2533 ; RV32I-NEXT: vor.vv v8, v8, v10
2534 ; RV32I-NEXT: vsrl.vi v10, v8, 2
2535 ; RV32I-NEXT: vor.vv v8, v8, v10
2536 ; RV32I-NEXT: vsrl.vi v10, v8, 4
2537 ; RV32I-NEXT: vor.vv v8, v8, v10
2538 ; RV32I-NEXT: vsrl.vi v10, v8, 8
2539 ; RV32I-NEXT: vor.vv v8, v8, v10
2540 ; RV32I-NEXT: vsrl.vi v10, v8, 16
2541 ; RV32I-NEXT: vor.vv v8, v8, v10
2542 ; RV32I-NEXT: vnot.v v8, v8
2543 ; RV32I-NEXT: vsrl.vi v10, v8, 1
2547 ; RV32I-NEXT: vsub.vv v8, v8, v10
2550 ; RV32I-NEXT: vand.vx v10, v8, a0
2551 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2552 ; RV32I-NEXT: vand.vx v8, v8, a0
2553 ; RV32I-NEXT: vadd.vv v8, v10, v8
2554 ; RV32I-NEXT: vsrl.vi v10, v8, 4
2555 ; RV32I-NEXT: vadd.vv v8, v8, v10
2558 ; RV32I-NEXT: vand.vx v8, v8, a0
2561 ; RV32I-NEXT: vmul.vx v8, v8, a0
2562 ; RV32I-NEXT: vsrl.vi v8, v8, 24
2568 ; RV64I-NEXT: vsrl.vi v10, v8, 1
2569 ; RV64I-NEXT: vor.vv v8, v8, v10
2570 ; RV64I-NEXT: vsrl.vi v10, v8, 2
2571 ; RV64I-NEXT: vor.vv v8, v8, v10
2572 ; RV64I-NEXT: vsrl.vi v10, v8, 4
2573 ; RV64I-NEXT: vor.vv v8, v8, v10
2574 ; RV64I-NEXT: vsrl.vi v10, v8, 8
2575 ; RV64I-NEXT: vor.vv v8, v8, v10
2576 ; RV64I-NEXT: vsrl.vi v10, v8, 16
2577 ; RV64I-NEXT: vor.vv v8, v8, v10
2578 ; RV64I-NEXT: vnot.v v8, v8
2579 ; RV64I-NEXT: vsrl.vi v10, v8, 1
2583 ; RV64I-NEXT: vsub.vv v8, v8, v10
2586 ; RV64I-NEXT: vand.vx v10, v8, a0
2587 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2588 ; RV64I-NEXT: vand.vx v8, v8, a0
2589 ; RV64I-NEXT: vadd.vv v8, v10, v8
2590 ; RV64I-NEXT: vsrl.vi v10, v8, 4
2591 ; RV64I-NEXT: vadd.vv v8, v8, v10
2594 ; RV64I-NEXT: vand.vx v8, v8, a0
2597 ; RV64I-NEXT: vmul.vx v8, v8, a0
2598 ; RV64I-NEXT: vsrl.vi v8, v8, 24
2604 ; CHECK-D-NEXT: vfwcvt.f.xu.v v12, v8
2607 ; CHECK-D-NEXT: vsrl.vx v8, v12, a0
2609 ; CHECK-D-NEXT: vncvt.x.x.w v12, v8
2611 ; CHECK-D-NEXT: vrsub.vx v8, v12, a0
2621 ; RV32I-NEXT: vsrl.vi v12, v8, 1
2622 ; RV32I-NEXT: vor.vv v8, v8, v12
2623 ; RV32I-NEXT: vsrl.vi v12, v8, 2
2624 ; RV32I-NEXT: vor.vv v8, v8, v12
2625 ; RV32I-NEXT: vsrl.vi v12, v8, 4
2626 ; RV32I-NEXT: vor.vv v8, v8, v12
2627 ; RV32I-NEXT: vsrl.vi v12, v8, 8
2628 ; RV32I-NEXT: vor.vv v8, v8, v12
2629 ; RV32I-NEXT: vsrl.vi v12, v8, 16
2630 ; RV32I-NEXT: vor.vv v8, v8, v12
2631 ; RV32I-NEXT: vnot.v v8, v8
2632 ; RV32I-NEXT: vsrl.vi v12, v8, 1
2636 ; RV32I-NEXT: vsub.vv v8, v8, v12
2639 ; RV32I-NEXT: vand.vx v12, v8, a0
2640 ; RV32I-NEXT: vsrl.vi v8, v8, 2
2641 ; RV32I-NEXT: vand.vx v8, v8, a0
2642 ; RV32I-NEXT: vadd.vv v8, v12, v8
2643 ; RV32I-NEXT: vsrl.vi v12, v8, 4
2644 ; RV32I-NEXT: vadd.vv v8, v8, v12
2647 ; RV32I-NEXT: vand.vx v8, v8, a0
2650 ; RV32I-NEXT: vmul.vx v8, v8, a0
2651 ; RV32I-NEXT: vsrl.vi v8, v8, 24
2657 ; RV64I-NEXT: vsrl.vi v12, v8, 1
2658 ; RV64I-NEXT: vor.vv v8, v8, v12
2659 ; RV64I-NEXT: vsrl.vi v12, v8, 2
2660 ; RV64I-NEXT: vor.vv v8, v8, v12
2661 ; RV64I-NEXT: vsrl.vi v12, v8, 4
2662 ; RV64I-NEXT: vor.vv v8, v8, v12
2663 ; RV64I-NEXT: vsrl.vi v12, v8, 8
2664 ; RV64I-NEXT: vor.vv v8, v8, v12
2665 ; RV64I-NEXT: vsrl.vi v12, v8, 16
2666 ; RV64I-NEXT: vor.vv v8, v8, v12
2667 ; RV64I-NEXT: vnot.v v8, v8
2668 ; RV64I-NEXT: vsrl.vi v12, v8, 1
2672 ; RV64I-NEXT: vsub.vv v8, v8, v12
2675 ; RV64I-NEXT: vand.vx v12, v8, a0
2676 ; RV64I-NEXT: vsrl.vi v8, v8, 2
2677 ; RV64I-NEXT: vand.vx v8, v8, a0
2678 ; RV64I-NEXT: vadd.vv v8, v12, v8
2679 ; RV64I-NEXT: vsrl.vi v12, v8, 4
2680 ; RV64I-NEXT: vadd.vv v8, v8, v12
2683 ; RV64I-NEXT: vand.vx v8, v8, a0
2686 ; RV64I-NEXT: vmul.vx v8, v8, a0
2687 ; RV64I-NEXT: vsrl.vi v8, v8, 24
2693 ; CHECK-D-NEXT: vfwcvt.f.xu.v v16, v8
2696 ; CHECK-D-NEXT: vsrl.vx v8, v16, a0
2698 ; CHECK-D-NEXT: vncvt.x.x.w v16, v8
2700 ; CHECK-D-NEXT: vrsub.vx v8, v16, a0
2710 ; RV32-NEXT: vsrl.vi v16, v8, 1
2711 ; RV32-NEXT: vor.vv v8, v8, v16
2712 ; RV32-NEXT: vsrl.vi v16, v8, 2
2713 ; RV32-NEXT: vor.vv v8, v8, v16
2714 ; RV32-NEXT: vsrl.vi v16, v8, 4
2715 ; RV32-NEXT: vor.vv v8, v8, v16
2716 ; RV32-NEXT: vsrl.vi v16, v8, 8
2717 ; RV32-NEXT: vor.vv v8, v8, v16
2718 ; RV32-NEXT: vsrl.vi v16, v8, 16
2719 ; RV32-NEXT: vor.vv v8, v8, v16
2720 ; RV32-NEXT: vnot.v v8, v8
2721 ; RV32-NEXT: vsrl.vi v16, v8, 1
2725 ; RV32-NEXT: vsub.vv v8, v8, v16
2728 ; RV32-NEXT: vand.vx v16, v8, a0
2729 ; RV32-NEXT: vsrl.vi v8, v8, 2
2730 ; RV32-NEXT: vand.vx v8, v8, a0
2731 ; RV32-NEXT: vadd.vv v8, v16, v8
2732 ; RV32-NEXT: vsrl.vi v16, v8, 4
2733 ; RV32-NEXT: vadd.vv v8, v8, v16
2736 ; RV32-NEXT: vand.vx v8, v8, a0
2739 ; RV32-NEXT: vmul.vx v8, v8, a0
2740 ; RV32-NEXT: vsrl.vi v8, v8, 24
2746 ; RV64-NEXT: vsrl.vi v16, v8, 1
2747 ; RV64-NEXT: vor.vv v8, v8, v16
2748 ; RV64-NEXT: vsrl.vi v16, v8, 2
2749 ; RV64-NEXT: vor.vv v8, v8, v16
2750 ; RV64-NEXT: vsrl.vi v16, v8, 4
2751 ; RV64-NEXT: vor.vv v8, v8, v16
2752 ; RV64-NEXT: vsrl.vi v16, v8, 8
2753 ; RV64-NEXT: vor.vv v8, v8, v16
2754 ; RV64-NEXT: vsrl.vi v16, v8, 16
2755 ; RV64-NEXT: vor.vv v8, v8, v16
2756 ; RV64-NEXT: vnot.v v8, v8
2757 ; RV64-NEXT: vsrl.vi v16, v8, 1
2761 ; RV64-NEXT: vsub.vv v8, v8, v16
2764 ; RV64-NEXT: vand.vx v16, v8, a0
2765 ; RV64-NEXT: vsrl.vi v8, v8, 2
2766 ; RV64-NEXT: vand.vx v8, v8, a0
2767 ; RV64-NEXT: vadd.vv v8, v16, v8
2768 ; RV64-NEXT: vsrl.vi v16, v8, 4
2769 ; RV64-NEXT: vadd.vv v8, v8, v16
2772 ; RV64-NEXT: vand.vx v8, v8, a0
2775 ; RV64-NEXT: vmul.vx v8, v8, a0
2776 ; RV64-NEXT: vsrl.vi v8, v8, 24
2804 ; RV32-NEXT: vsrl.vi v9, v8, 1
2805 ; RV32-NEXT: vor.vv v8, v8, v9
2806 ; RV32-NEXT: vsrl.vi v9, v8, 2
2807 ; RV32-NEXT: vor.vv v8, v8, v9
2808 ; RV32-NEXT: vsrl.vi v9, v8, 4
2809 ; RV32-NEXT: vor.vv v8, v8, v9
2810 ; RV32-NEXT: vsrl.vi v9, v8, 8
2811 ; RV32-NEXT: vor.vv v8, v8, v9
2812 ; RV32-NEXT: vsrl.vi v9, v8, 16
2813 ; RV32-NEXT: vor.vv v8, v8, v9
2815 ; RV32-NEXT: vsrl.vx v9, v8, a0
2816 ; RV32-NEXT: vor.vv v8, v8, v9
2819 ; RV32-NEXT: vnot.v v8, v8
2821 ; RV32-NEXT: vsrl.vi v11, v8, 1
2823 ; RV32-NEXT: vsub.vv v8, v8, v9
2824 ; RV32-NEXT: vand.vv v9, v8, v10
2825 ; RV32-NEXT: vsrl.vi v8, v8, 2
2826 ; RV32-NEXT: vand.vv v8, v8, v10
2827 ; RV32-NEXT: vadd.vv v8, v9, v8
2830 ; RV32-NEXT: vsrl.vi v11, v8, 4
2831 ; RV32-NEXT: vadd.vv v8, v8, v11
2832 ; RV32-NEXT: vand.vv v8, v8, v9
2833 ; RV32-NEXT: vmul.vv v8, v8, v10
2835 ; RV32-NEXT: vsrl.vx v8, v8, a0
2842 ; RV64-NEXT: vsrl.vi v9, v8, 1
2843 ; RV64-NEXT: vor.vv v8, v8, v9
2844 ; RV64-NEXT: vsrl.vi v9, v8, 2
2845 ; RV64-NEXT: vor.vv v8, v8, v9
2846 ; RV64-NEXT: vsrl.vi v9, v8, 4
2847 ; RV64-NEXT: vor.vv v8, v8, v9
2848 ; RV64-NEXT: vsrl.vi v9, v8, 8
2849 ; RV64-NEXT: vor.vv v8, v8, v9
2850 ; RV64-NEXT: vsrl.vi v9, v8, 16
2851 ; RV64-NEXT: vor.vv v8, v8, v9
2853 ; RV64-NEXT: vsrl.vx v9, v8, a0
2854 ; RV64-NEXT: vor.vv v8, v8, v9
2855 ; RV64-NEXT: vnot.v v8, v8
2860 ; RV64-NEXT: vsrl.vi v9, v8, 1
2862 ; RV64-NEXT: vsub.vv v8, v8, v9
2863 ; RV64-NEXT: vand.vx v9, v8, a1
2864 ; RV64-NEXT: vsrl.vi v8, v8, 2
2865 ; RV64-NEXT: vand.vx v8, v8, a1
2866 ; RV64-NEXT: vadd.vv v8, v9, v8
2871 ; RV64-NEXT: vsrl.vi v9, v8, 4
2872 ; RV64-NEXT: vadd.vv v8, v8, v9
2873 ; RV64-NEXT: vand.vx v8, v8, a0
2874 ; RV64-NEXT: vmul.vx v8, v8, a1
2876 ; RV64-NEXT: vsrl.vx v8, v8, a0
2904 ; RV32-NEXT: vsrl.vi v10, v8, 1
2905 ; RV32-NEXT: vor.vv v8, v8, v10
2906 ; RV32-NEXT: vsrl.vi v10, v8, 2
2907 ; RV32-NEXT: vor.vv v8, v8, v10
2908 ; RV32-NEXT: vsrl.vi v10, v8, 4
2909 ; RV32-NEXT: vor.vv v8, v8, v10
2910 ; RV32-NEXT: vsrl.vi v10, v8, 8
2911 ; RV32-NEXT: vor.vv v8, v8, v10
2912 ; RV32-NEXT: vsrl.vi v10, v8, 16
2913 ; RV32-NEXT: vor.vv v8, v8, v10
2915 ; RV32-NEXT: vsrl.vx v10, v8, a0
2916 ; RV32-NEXT: vor.vv v8, v8, v10
2919 ; RV32-NEXT: vnot.v v8, v8
2921 ; RV32-NEXT: vsrl.vi v14, v8, 1
2923 ; RV32-NEXT: vsub.vv v8, v8, v10
2924 ; RV32-NEXT: vand.vv v10, v8, v12
2925 ; RV32-NEXT: vsrl.vi v8, v8, 2
2926 ; RV32-NEXT: vand.vv v8, v8, v12
2927 ; RV32-NEXT: vadd.vv v8, v10, v8
2930 ; RV32-NEXT: vsrl.vi v14, v8, 4
2931 ; RV32-NEXT: vadd.vv v8, v8, v14
2932 ; RV32-NEXT: vand.vv v8, v8, v10
2933 ; RV32-NEXT: vmul.vv v8, v8, v12
2935 ; RV32-NEXT: vsrl.vx v8, v8, a0
2942 ; RV64-NEXT: vsrl.vi v10, v8, 1
2943 ; RV64-NEXT: vor.vv v8, v8, v10
2944 ; RV64-NEXT: vsrl.vi v10, v8, 2
2945 ; RV64-NEXT: vor.vv v8, v8, v10
2946 ; RV64-NEXT: vsrl.vi v10, v8, 4
2947 ; RV64-NEXT: vor.vv v8, v8, v10
2948 ; RV64-NEXT: vsrl.vi v10, v8, 8
2949 ; RV64-NEXT: vor.vv v8, v8, v10
2950 ; RV64-NEXT: vsrl.vi v10, v8, 16
2951 ; RV64-NEXT: vor.vv v8, v8, v10
2953 ; RV64-NEXT: vsrl.vx v10, v8, a0
2954 ; RV64-NEXT: vor.vv v8, v8, v10
2955 ; RV64-NEXT: vnot.v v8, v8
2960 ; RV64-NEXT: vsrl.vi v10, v8, 1
2962 ; RV64-NEXT: vsub.vv v8, v8, v10
2963 ; RV64-NEXT: vand.vx v10, v8, a1
2964 ; RV64-NEXT: vsrl.vi v8, v8, 2
2965 ; RV64-NEXT: vand.vx v8, v8, a1
2966 ; RV64-NEXT: vadd.vv v8, v10, v8
2971 ; RV64-NEXT: vsrl.vi v10, v8, 4
2972 ; RV64-NEXT: vadd.vv v8, v8, v10
2973 ; RV64-NEXT: vand.vx v8, v8, a0
2974 ; RV64-NEXT: vmul.vx v8, v8, a1
2976 ; RV64-NEXT: vsrl.vx v8, v8, a0
3004 ; RV32-NEXT: vsrl.vi v12, v8, 1
3005 ; RV32-NEXT: vor.vv v8, v8, v12
3006 ; RV32-NEXT: vsrl.vi v12, v8, 2
3007 ; RV32-NEXT: vor.vv v8, v8, v12
3008 ; RV32-NEXT: vsrl.vi v12, v8, 4
3009 ; RV32-NEXT: vor.vv v8, v8, v12
3010 ; RV32-NEXT: vsrl.vi v12, v8, 8
3011 ; RV32-NEXT: vor.vv v8, v8, v12
3012 ; RV32-NEXT: vsrl.vi v12, v8, 16
3013 ; RV32-NEXT: vor.vv v8, v8, v12
3015 ; RV32-NEXT: vsrl.vx v12, v8, a0
3016 ; RV32-NEXT: vor.vv v8, v8, v12
3019 ; RV32-NEXT: vnot.v v8, v8
3021 ; RV32-NEXT: vsrl.vi v20, v8, 1
3023 ; RV32-NEXT: vsub.vv v8, v8, v12
3024 ; RV32-NEXT: vand.vv v12, v8, v16
3025 ; RV32-NEXT: vsrl.vi v8, v8, 2
3026 ; RV32-NEXT: vand.vv v8, v8, v16
3027 ; RV32-NEXT: vadd.vv v8, v12, v8
3030 ; RV32-NEXT: vsrl.vi v20, v8, 4
3031 ; RV32-NEXT: vadd.vv v8, v8, v20
3032 ; RV32-NEXT: vand.vv v8, v8, v12
3033 ; RV32-NEXT: vmul.vv v8, v8, v16
3035 ; RV32-NEXT: vsrl.vx v8, v8, a0
3042 ; RV64-NEXT: vsrl.vi v12, v8, 1
3043 ; RV64-NEXT: vor.vv v8, v8, v12
3044 ; RV64-NEXT: vsrl.vi v12, v8, 2
3045 ; RV64-NEXT: vor.vv v8, v8, v12
3046 ; RV64-NEXT: vsrl.vi v12, v8, 4
3047 ; RV64-NEXT: vor.vv v8, v8, v12
3048 ; RV64-NEXT: vsrl.vi v12, v8, 8
3049 ; RV64-NEXT: vor.vv v8, v8, v12
3050 ; RV64-NEXT: vsrl.vi v12, v8, 16
3051 ; RV64-NEXT: vor.vv v8, v8, v12
3053 ; RV64-NEXT: vsrl.vx v12, v8, a0
3054 ; RV64-NEXT: vor.vv v8, v8, v12
3055 ; RV64-NEXT: vnot.v v8, v8
3060 ; RV64-NEXT: vsrl.vi v12, v8, 1
3062 ; RV64-NEXT: vsub.vv v8, v8, v12
3063 ; RV64-NEXT: vand.vx v12, v8, a1
3064 ; RV64-NEXT: vsrl.vi v8, v8, 2
3065 ; RV64-NEXT: vand.vx v8, v8, a1
3066 ; RV64-NEXT: vadd.vv v8, v12, v8
3071 ; RV64-NEXT: vsrl.vi v12, v8, 4
3072 ; RV64-NEXT: vadd.vv v8, v8, v12
3073 ; RV64-NEXT: vand.vx v8, v8, a0
3074 ; RV64-NEXT: vmul.vx v8, v8, a1
3076 ; RV64-NEXT: vsrl.vx v8, v8, a0
3104 ; RV32-NEXT: vsrl.vi v16, v8, 1
3105 ; RV32-NEXT: vor.vv v8, v8, v16
3106 ; RV32-NEXT: vsrl.vi v16, v8, 2
3107 ; RV32-NEXT: vor.vv v8, v8, v16
3108 ; RV32-NEXT: vsrl.vi v16, v8, 4
3109 ; RV32-NEXT: vor.vv v8, v8, v16
3110 ; RV32-NEXT: vsrl.vi v16, v8, 8
3111 ; RV32-NEXT: vor.vv v8, v8, v16
3112 ; RV32-NEXT: vsrl.vi v16, v8, 16
3113 ; RV32-NEXT: vor.vv v8, v8, v16
3115 ; RV32-NEXT: vsrl.vx v16, v8, a0
3116 ; RV32-NEXT: vor.vv v8, v8, v16
3119 ; RV32-NEXT: vnot.v v8, v8
3121 ; RV32-NEXT: vsrl.vi v0, v8, 1
3123 ; RV32-NEXT: vsub.vv v8, v8, v16
3124 ; RV32-NEXT: vand.vv v16, v8, v24
3125 ; RV32-NEXT: vsrl.vi v8, v8, 2
3126 ; RV32-NEXT: vand.vv v8, v8, v24
3127 ; RV32-NEXT: vadd.vv v8, v16, v8
3130 ; RV32-NEXT: vsrl.vi v0, v8, 4
3131 ; RV32-NEXT: vadd.vv v8, v8, v0
3132 ; RV32-NEXT: vand.vv v8, v8, v16
3133 ; RV32-NEXT: vmul.vv v8, v8, v24
3135 ; RV32-NEXT: vsrl.vx v8, v8, a0
3142 ; RV64-NEXT: vsrl.vi v16, v8, 1
3143 ; RV64-NEXT: vor.vv v8, v8, v16
3144 ; RV64-NEXT: vsrl.vi v16, v8, 2
3145 ; RV64-NEXT: vor.vv v8, v8, v16
3146 ; RV64-NEXT: vsrl.vi v16, v8, 4
3147 ; RV64-NEXT: vor.vv v8, v8, v16
3148 ; RV64-NEXT: vsrl.vi v16, v8, 8
3149 ; RV64-NEXT: vor.vv v8, v8, v16
3150 ; RV64-NEXT: vsrl.vi v16, v8, 16
3151 ; RV64-NEXT: vor.vv v8, v8, v16
3153 ; RV64-NEXT: vsrl.vx v16, v8, a0
3154 ; RV64-NEXT: vor.vv v8, v8, v16
3155 ; RV64-NEXT: vnot.v v8, v8
3160 ; RV64-NEXT: vsrl.vi v16, v8, 1
3162 ; RV64-NEXT: vsub.vv v8, v8, v16
3163 ; RV64-NEXT: vand.vx v16, v8, a1
3164 ; RV64-NEXT: vsrl.vi v8, v8, 2
3165 ; RV64-NEXT: vand.vx v8, v8, a1
3166 ; RV64-NEXT: vadd.vv v8, v16, v8
3171 ; RV64-NEXT: vsrl.vi v16, v8, 4
3172 ; RV64-NEXT: vadd.vv v8, v8, v16
3173 ; RV64-NEXT: vand.vx v8, v8, a0
3174 ; RV64-NEXT: vmul.vx v8, v8, a1
3176 ; RV64-NEXT: vsrl.vx v8, v8, a0