Lines Matching full:8

41 define <vscale x 8 x i1> @icmp_eq_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
47 %vc = icmp eq <vscale x 8 x i8> %va, %vb
48 ret <vscale x 8 x i1> %vc
51 define <vscale x 8 x i1> @icmp_eq_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
57 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
58 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
59 %vc = icmp eq <vscale x 8 x i8> %va, %splat
60 ret <vscale x 8 x i1> %vc
63 define <vscale x 8 x i1> @icmp_eq_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
69 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
70 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
71 %vc = icmp eq <vscale x 8 x i8> %splat, %va
72 ret <vscale x 8 x i1> %vc
75 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
81 %vc = icmp eq <vscale x 8 x i8> %va, splat (i8 0)
82 ret <vscale x 8 x i1> %vc
85 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i8_1(<vscale x 8 x i8> %va) {
91 %vc = icmp eq <vscale x 8 x i8> %va, splat (i8 5)
92 ret <vscale x 8 x i1> %vc
95 define <vscale x 8 x i1> @icmp_eq_iv_nxv8i8_1(<vscale x 8 x i8> %va) {
101 %vc = icmp eq <vscale x 8 x i8> splat (i8 5), %va
102 ret <vscale x 8 x i1> %vc
105 define <vscale x 8 x i1> @icmp_ne_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
111 %vc = icmp ne <vscale x 8 x i8> %va, %vb
112 ret <vscale x 8 x i1> %vc
115 define <vscale x 8 x i1> @icmp_ne_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
121 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
122 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
123 %vc = icmp ne <vscale x 8 x i8> %va, %splat
124 ret <vscale x 8 x i1> %vc
127 define <vscale x 8 x i1> @icmp_ne_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
133 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
134 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
135 %vc = icmp ne <vscale x 8 x i8> %splat, %va
136 ret <vscale x 8 x i1> %vc
139 define <vscale x 8 x i1> @icmp_ne_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
145 %vc = icmp ne <vscale x 8 x i8> %va, splat (i8 5)
146 ret <vscale x 8 x i1> %vc
149 define <vscale x 8 x i1> @icmp_ugt_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
155 %vc = icmp ugt <vscale x 8 x i8> %va, %vb
156 ret <vscale x 8 x i1> %vc
159 define <vscale x 8 x i1> @icmp_ugt_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
165 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
166 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
167 %vc = icmp ugt <vscale x 8 x i8> %va, %splat
168 ret <vscale x 8 x i1> %vc
171 define <vscale x 8 x i1> @icmp_ugt_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
177 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
178 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
179 %vc = icmp ugt <vscale x 8 x i8> %splat, %va
180 ret <vscale x 8 x i1> %vc
183 define <vscale x 8 x i1> @icmp_ugt_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
189 %vc = icmp ugt <vscale x 8 x i8> %va, splat (i8 5)
190 ret <vscale x 8 x i1> %vc
193 define <vscale x 8 x i1> @icmp_uge_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
199 %vc = icmp uge <vscale x 8 x i8> %va, %vb
200 ret <vscale x 8 x i1> %vc
203 define <vscale x 8 x i1> @icmp_uge_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
210 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
211 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
212 %vc = icmp uge <vscale x 8 x i8> %va, %splat
213 ret <vscale x 8 x i1> %vc
216 define <vscale x 8 x i1> @icmp_uge_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
222 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
223 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
224 %vc = icmp uge <vscale x 8 x i8> %splat, %va
225 ret <vscale x 8 x i1> %vc
228 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
235 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 -16)
236 ret <vscale x 8 x i1> %vc
239 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_1(<vscale x 8 x i8> %va) {
245 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 15)
246 ret <vscale x 8 x i1> %vc
249 define <vscale x 8 x i1> @icmp_uge_iv_nxv8i8_1(<vscale x 8 x i8> %va) {
255 %vc = icmp uge <vscale x 8 x i8> splat (i8 15), %va
256 ret <vscale x 8 x i1> %vc
259 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_2(<vscale x 8 x i8> %va) {
265 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 0)
266 ret <vscale x 8 x i1> %vc
269 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_3(<vscale x 8 x i8> %va) {
275 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 1)
276 ret <vscale x 8 x i1> %vc
279 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_4(<vscale x 8 x i8> %va) {
285 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 -15)
286 ret <vscale x 8 x i1> %vc
289 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_5(<vscale x 8 x i8> %va) {
295 %vc = icmp uge <vscale x 8 x i8> %va, splat (i8 16)
296 ret <vscale x 8 x i1> %vc
300 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i8_6(<vscale x 8 x i8> %va, iXLen %vl) {
308 %splat = call <vscale x 8 x i8> @llvm.riscv.vmv.v.x.nxv8i8.iXLen(<vscale x 8 x i8> undef, i8 0, iXLen %vl)
309 %vc = icmp uge <vscale x 8 x i8> %va, %splat
310 ret <vscale x 8 x i1> %vc
313 define <vscale x 8 x i1> @icmp_ult_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
319 %vc = icmp ult <vscale x 8 x i8> %va, %vb
320 ret <vscale x 8 x i1> %vc
323 define <vscale x 8 x i1> @icmp_ult_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
329 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
330 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
331 %vc = icmp ult <vscale x 8 x i8> %va, %splat
332 ret <vscale x 8 x i1> %vc
335 define <vscale x 8 x i1> @icmp_ult_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
341 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
342 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
343 %vc = icmp ult <vscale x 8 x i8> %splat, %va
344 ret <vscale x 8 x i1> %vc
347 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
354 %vc = icmp ult <vscale x 8 x i8> %va, splat (i8 -16)
355 ret <vscale x 8 x i1> %vc
358 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_1(<vscale x 8 x i8> %va) {
364 %vc = icmp ult <vscale x 8 x i8> %va, splat (i8 -15)
365 ret <vscale x 8 x i1> %vc
368 define <vscale x 8 x i1> @icmp_ult_iv_nxv8i8_1(<vscale x 8 x i8> %va) {
374 %vc = icmp ult <vscale x 8 x i8> splat (i8 -15), %va
375 ret <vscale x 8 x i1> %vc
378 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_2(<vscale x 8 x i8> %va) {
384 %vc = icmp ult <vscale x 8 x i8> %va, splat (i8 0)
385 ret <vscale x 8 x i1> %vc
388 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_3(<vscale x 8 x i8> %va) {
394 %vc = icmp ult <vscale x 8 x i8> %va, splat (i8 1)
395 ret <vscale x 8 x i1> %vc
398 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_4(<vscale x 8 x i8> %va) {
404 %vc = icmp ult <vscale x 8 x i8> %va, splat (i8 16)
405 ret <vscale x 8 x i1> %vc
408 declare <vscale x 8 x i8> @llvm.riscv.vmv.v.x.nxv8i8.iXLen(<vscale x 8 x i8>, i8, iXLen);
411 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i8_5(<vscale x 8 x i8> %va, iXLen %vl) {
417 %splat = call <vscale x 8 x i8> @llvm.riscv.vmv.v.x.nxv8i8.iXLen(<vscale x 8 x i8> undef, i8 0, iXLen %vl)
418 %vc = icmp ult <vscale x 8 x i8> %va, %splat
419 ret <vscale x 8 x i1> %vc
422 define <vscale x 8 x i1> @icmp_ule_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
428 %vc = icmp ule <vscale x 8 x i8> %va, %vb
429 ret <vscale x 8 x i1> %vc
432 define <vscale x 8 x i1> @icmp_ule_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
438 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
439 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
440 %vc = icmp ule <vscale x 8 x i8> %va, %splat
441 ret <vscale x 8 x i1> %vc
444 define <vscale x 8 x i1> @icmp_ule_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
451 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
452 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
453 %vc = icmp ule <vscale x 8 x i8> %splat, %va
454 ret <vscale x 8 x i1> %vc
457 define <vscale x 8 x i1> @icmp_ule_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
463 %vc = icmp ule <vscale x 8 x i8> %va, splat (i8 5)
464 ret <vscale x 8 x i1> %vc
467 define <vscale x 8 x i1> @icmp_sgt_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
473 %vc = icmp sgt <vscale x 8 x i8> %va, %vb
474 ret <vscale x 8 x i1> %vc
477 define <vscale x 8 x i1> @icmp_sgt_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
483 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
484 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
485 %vc = icmp sgt <vscale x 8 x i8> %va, %splat
486 ret <vscale x 8 x i1> %vc
489 define <vscale x 8 x i1> @icmp_sgt_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
495 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
496 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
497 %vc = icmp sgt <vscale x 8 x i8> %splat, %va
498 ret <vscale x 8 x i1> %vc
501 define <vscale x 8 x i1> @icmp_sgt_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
507 %vc = icmp sgt <vscale x 8 x i8> %va, splat (i8 5)
508 ret <vscale x 8 x i1> %vc
511 define <vscale x 8 x i1> @icmp_sge_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
517 %vc = icmp sge <vscale x 8 x i8> %va, %vb
518 ret <vscale x 8 x i1> %vc
521 define <vscale x 8 x i1> @icmp_sge_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
528 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
529 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
530 %vc = icmp sge <vscale x 8 x i8> %va, %splat
531 ret <vscale x 8 x i1> %vc
534 define <vscale x 8 x i1> @icmp_sge_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
540 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
541 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
542 %vc = icmp sge <vscale x 8 x i8> %splat, %va
543 ret <vscale x 8 x i1> %vc
546 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
553 %vc = icmp sge <vscale x 8 x i8> %va, splat (i8 -16)
554 ret <vscale x 8 x i1> %vc
557 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i8_1(<vscale x 8 x i8> %va) {
563 %vc = icmp sge <vscale x 8 x i8> %va, splat (i8 -15)
564 ret <vscale x 8 x i1> %vc
567 define <vscale x 8 x i1> @icmp_sge_iv_nxv8i8_1(<vscale x 8 x i8> %va) {
573 %vc = icmp sge <vscale x 8 x i8> splat (i8 -15), %va
574 ret <vscale x 8 x i1> %vc
577 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i8_2(<vscale x 8 x i8> %va) {
583 %vc = icmp sge <vscale x 8 x i8> %va, splat (i8 0)
584 ret <vscale x 8 x i1> %vc
587 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i8_3(<vscale x 8 x i8> %va) {
593 %vc = icmp sge <vscale x 8 x i8> %va, splat (i8 16)
594 ret <vscale x 8 x i1> %vc
597 define <vscale x 8 x i1> @icmp_slt_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
603 %vc = icmp slt <vscale x 8 x i8> %va, %vb
604 ret <vscale x 8 x i1> %vc
607 define <vscale x 8 x i1> @icmp_slt_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
613 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
614 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
615 %vc = icmp slt <vscale x 8 x i8> %va, %splat
616 ret <vscale x 8 x i1> %vc
619 define <vscale x 8 x i1> @icmp_slt_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
625 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
626 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
627 %vc = icmp slt <vscale x 8 x i8> %splat, %va
628 ret <vscale x 8 x i1> %vc
631 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
638 %vc = icmp slt <vscale x 8 x i8> %va, splat (i8 -16)
639 ret <vscale x 8 x i1> %vc
642 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i8_1(<vscale x 8 x i8> %va) {
648 %vc = icmp slt <vscale x 8 x i8> %va, splat (i8 -15)
649 ret <vscale x 8 x i1> %vc
652 define <vscale x 8 x i1> @icmp_slt_iv_nxv8i8_1(<vscale x 8 x i8> %va) {
658 %vc = icmp slt <vscale x 8 x i8> splat (i8 -15), %va
659 ret <vscale x 8 x i1> %vc
662 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i8_2(<vscale x 8 x i8> %va) {
668 %vc = icmp slt <vscale x 8 x i8> %va, splat (i8 0)
669 ret <vscale x 8 x i1> %vc
672 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i8_3(<vscale x 8 x i8> %va) {
678 %vc = icmp slt <vscale x 8 x i8> %va, splat (i8 16)
679 ret <vscale x 8 x i1> %vc
682 define <vscale x 8 x i1> @icmp_sle_vv_nxv8i8(<vscale x 8 x i8> %va, <vscale x 8 x i8> %vb) {
688 %vc = icmp sle <vscale x 8 x i8> %va, %vb
689 ret <vscale x 8 x i1> %vc
692 define <vscale x 8 x i1> @icmp_sle_vx_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
698 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
699 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
700 %vc = icmp sle <vscale x 8 x i8> %va, %splat
701 ret <vscale x 8 x i1> %vc
704 define <vscale x 8 x i1> @icmp_sle_xv_nxv8i8(<vscale x 8 x i8> %va, i8 %b) {
711 %head = insertelement <vscale x 8 x i8> poison, i8 %b, i32 0
712 %splat = shufflevector <vscale x 8 x i8> %head, <vscale x 8 x i8> poison, <vscale x 8 x i32> zeroinitializer
713 %vc = icmp sle <vscale x 8 x i8> %splat, %va
714 ret <vscale x 8 x i1> %vc
717 define <vscale x 8 x i1> @icmp_sle_vi_nxv8i8_0(<vscale x 8 x i8> %va) {
723 %vc = icmp sle <vscale x 8 x i8> %va, splat (i8 5)
724 ret <vscale x 8 x i1> %vc
727 define <vscale x 8 x i1> @icmp_eq_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
733 %vc = icmp eq <vscale x 8 x i16> %va, %vb
734 ret <vscale x 8 x i1> %vc
737 define <vscale x 8 x i1> @icmp_eq_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
743 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
744 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
745 %vc = icmp eq <vscale x 8 x i16> %va, %splat
746 ret <vscale x 8 x i1> %vc
749 define <vscale x 8 x i1> @icmp_eq_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
755 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
756 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
757 %vc = icmp eq <vscale x 8 x i16> %splat, %va
758 ret <vscale x 8 x i1> %vc
761 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
767 %vc = icmp eq <vscale x 8 x i16> %va, splat (i16 0)
768 ret <vscale x 8 x i1> %vc
771 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i16_1(<vscale x 8 x i16> %va) {
777 %vc = icmp eq <vscale x 8 x i16> %va, splat (i16 5)
778 ret <vscale x 8 x i1> %vc
781 define <vscale x 8 x i1> @icmp_eq_iv_nxv8i16_1(<vscale x 8 x i16> %va) {
787 %vc = icmp eq <vscale x 8 x i16> splat (i16 5), %va
788 ret <vscale x 8 x i1> %vc
791 define <vscale x 8 x i1> @icmp_ne_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
797 %vc = icmp ne <vscale x 8 x i16> %va, %vb
798 ret <vscale x 8 x i1> %vc
801 define <vscale x 8 x i1> @icmp_ne_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
807 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
808 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
809 %vc = icmp ne <vscale x 8 x i16> %va, %splat
810 ret <vscale x 8 x i1> %vc
813 define <vscale x 8 x i1> @icmp_ne_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
819 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
820 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
821 %vc = icmp ne <vscale x 8 x i16> %splat, %va
822 ret <vscale x 8 x i1> %vc
825 define <vscale x 8 x i1> @icmp_ne_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
831 %vc = icmp ne <vscale x 8 x i16> %va, splat (i16 5)
832 ret <vscale x 8 x i1> %vc
835 define <vscale x 8 x i1> @icmp_ugt_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
841 %vc = icmp ugt <vscale x 8 x i16> %va, %vb
842 ret <vscale x 8 x i1> %vc
845 define <vscale x 8 x i1> @icmp_ugt_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
851 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
852 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
853 %vc = icmp ugt <vscale x 8 x i16> %va, %splat
854 ret <vscale x 8 x i1> %vc
857 define <vscale x 8 x i1> @icmp_ugt_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
863 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
864 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
865 %vc = icmp ugt <vscale x 8 x i16> %splat, %va
866 ret <vscale x 8 x i1> %vc
869 define <vscale x 8 x i1> @icmp_ugt_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
875 %vc = icmp ugt <vscale x 8 x i16> %va, splat (i16 5)
876 ret <vscale x 8 x i1> %vc
879 define <vscale x 8 x i1> @icmp_uge_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
885 %vc = icmp uge <vscale x 8 x i16> %va, %vb
886 ret <vscale x 8 x i1> %vc
889 define <vscale x 8 x i1> @icmp_uge_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
896 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
897 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
898 %vc = icmp uge <vscale x 8 x i16> %va, %splat
899 ret <vscale x 8 x i1> %vc
902 define <vscale x 8 x i1> @icmp_uge_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
908 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
909 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
910 %vc = icmp uge <vscale x 8 x i16> %splat, %va
911 ret <vscale x 8 x i1> %vc
914 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
921 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 -16)
922 ret <vscale x 8 x i1> %vc
925 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_1(<vscale x 8 x i16> %va) {
931 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 15)
932 ret <vscale x 8 x i1> %vc
935 define <vscale x 8 x i1> @icmp_uge_iv_nxv8i16_1(<vscale x 8 x i16> %va) {
941 %vc = icmp uge <vscale x 8 x i16> splat (i16 15), %va
942 ret <vscale x 8 x i1> %vc
945 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_2(<vscale x 8 x i16> %va) {
951 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 0)
952 ret <vscale x 8 x i1> %vc
955 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_3(<vscale x 8 x i16> %va) {
961 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 1)
962 ret <vscale x 8 x i1> %vc
965 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_4(<vscale x 8 x i16> %va) {
971 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 -15)
972 ret <vscale x 8 x i1> %vc
975 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i16_5(<vscale x 8 x i16> %va) {
981 %vc = icmp uge <vscale x 8 x i16> %va, splat (i16 16)
982 ret <vscale x 8 x i1> %vc
985 define <vscale x 8 x i1> @icmp_ult_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
991 %vc = icmp ult <vscale x 8 x i16> %va, %vb
992 ret <vscale x 8 x i1> %vc
995 define <vscale x 8 x i1> @icmp_ult_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1001 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1002 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1003 %vc = icmp ult <vscale x 8 x i16> %va, %splat
1004 ret <vscale x 8 x i1> %vc
1007 define <vscale x 8 x i1> @icmp_ult_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1013 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1014 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1015 %vc = icmp ult <vscale x 8 x i16> %splat, %va
1016 ret <vscale x 8 x i1> %vc
1019 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1026 %vc = icmp ult <vscale x 8 x i16> %va, splat (i16 -16)
1027 ret <vscale x 8 x i1> %vc
1030 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i16_1(<vscale x 8 x i16> %va) {
1036 %vc = icmp ult <vscale x 8 x i16> %va, splat (i16 -15)
1037 ret <vscale x 8 x i1> %vc
1040 define <vscale x 8 x i1> @icmp_ult_iv_nxv8i16_1(<vscale x 8 x i16> %va) {
1046 %vc = icmp ult <vscale x 8 x i16> splat (i16 -15), %va
1047 ret <vscale x 8 x i1> %vc
1050 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i16_2(<vscale x 8 x i16> %va) {
1056 %vc = icmp ult <vscale x 8 x i16> %va, splat (i16 0)
1057 ret <vscale x 8 x i1> %vc
1060 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i16_3(<vscale x 8 x i16> %va) {
1066 %vc = icmp ult <vscale x 8 x i16> %va, splat (i16 1)
1067 ret <vscale x 8 x i1> %vc
1070 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i16_4(<vscale x 8 x i16> %va) {
1076 %vc = icmp ult <vscale x 8 x i16> %va, splat (i16 16)
1077 ret <vscale x 8 x i1> %vc
1080 define <vscale x 8 x i1> @icmp_ule_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
1086 %vc = icmp ule <vscale x 8 x i16> %va, %vb
1087 ret <vscale x 8 x i1> %vc
1090 define <vscale x 8 x i1> @icmp_ule_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1096 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1097 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1098 %vc = icmp ule <vscale x 8 x i16> %va, %splat
1099 ret <vscale x 8 x i1> %vc
1102 define <vscale x 8 x i1> @icmp_ule_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1109 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1110 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1111 %vc = icmp ule <vscale x 8 x i16> %splat, %va
1112 ret <vscale x 8 x i1> %vc
1115 define <vscale x 8 x i1> @icmp_ule_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1121 %vc = icmp ule <vscale x 8 x i16> %va, splat (i16 5)
1122 ret <vscale x 8 x i1> %vc
1125 define <vscale x 8 x i1> @icmp_sgt_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
1131 %vc = icmp sgt <vscale x 8 x i16> %va, %vb
1132 ret <vscale x 8 x i1> %vc
1135 define <vscale x 8 x i1> @icmp_sgt_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1141 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1142 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1143 %vc = icmp sgt <vscale x 8 x i16> %va, %splat
1144 ret <vscale x 8 x i1> %vc
1147 define <vscale x 8 x i1> @icmp_sgt_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1153 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1154 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1155 %vc = icmp sgt <vscale x 8 x i16> %splat, %va
1156 ret <vscale x 8 x i1> %vc
1159 define <vscale x 8 x i1> @icmp_sgt_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1165 %vc = icmp sgt <vscale x 8 x i16> %va, splat (i16 5)
1166 ret <vscale x 8 x i1> %vc
1169 define <vscale x 8 x i1> @icmp_sge_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
1175 %vc = icmp sge <vscale x 8 x i16> %va, %vb
1176 ret <vscale x 8 x i1> %vc
1179 define <vscale x 8 x i1> @icmp_sge_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1186 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1187 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1188 %vc = icmp sge <vscale x 8 x i16> %va, %splat
1189 ret <vscale x 8 x i1> %vc
1192 define <vscale x 8 x i1> @icmp_sge_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1198 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1199 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1200 %vc = icmp sge <vscale x 8 x i16> %splat, %va
1201 ret <vscale x 8 x i1> %vc
1204 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1211 %vc = icmp sge <vscale x 8 x i16> %va, splat (i16 -16)
1212 ret <vscale x 8 x i1> %vc
1215 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i16_1(<vscale x 8 x i16> %va) {
1221 %vc = icmp sge <vscale x 8 x i16> %va, splat (i16 -15)
1222 ret <vscale x 8 x i1> %vc
1225 define <vscale x 8 x i1> @icmp_sge_iv_nxv8i16_1(<vscale x 8 x i16> %va) {
1231 %vc = icmp sge <vscale x 8 x i16> splat (i16 -15), %va
1232 ret <vscale x 8 x i1> %vc
1235 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i16_2(<vscale x 8 x i16> %va) {
1241 %vc = icmp sge <vscale x 8 x i16> %va, splat (i16 0)
1242 ret <vscale x 8 x i1> %vc
1245 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i16_3(<vscale x 8 x i16> %va) {
1251 %vc = icmp sge <vscale x 8 x i16> %va, splat (i16 16)
1252 ret <vscale x 8 x i1> %vc
1255 define <vscale x 8 x i1> @icmp_slt_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
1261 %vc = icmp slt <vscale x 8 x i16> %va, %vb
1262 ret <vscale x 8 x i1> %vc
1265 define <vscale x 8 x i1> @icmp_slt_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1271 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1272 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1273 %vc = icmp slt <vscale x 8 x i16> %va, %splat
1274 ret <vscale x 8 x i1> %vc
1277 define <vscale x 8 x i1> @icmp_slt_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1283 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1284 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1285 %vc = icmp slt <vscale x 8 x i16> %splat, %va
1286 ret <vscale x 8 x i1> %vc
1289 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1296 %vc = icmp slt <vscale x 8 x i16> %va, splat (i16 -16)
1297 ret <vscale x 8 x i1> %vc
1300 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i16_1(<vscale x 8 x i16> %va) {
1306 %vc = icmp slt <vscale x 8 x i16> %va, splat (i16 -15)
1307 ret <vscale x 8 x i1> %vc
1310 define <vscale x 8 x i1> @icmp_slt_iv_nxv8i16_1(<vscale x 8 x i16> %va) {
1316 %vc = icmp slt <vscale x 8 x i16> splat (i16 -15), %va
1317 ret <vscale x 8 x i1> %vc
1320 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i16_2(<vscale x 8 x i16> %va) {
1326 %vc = icmp slt <vscale x 8 x i16> %va, splat (i16 0)
1327 ret <vscale x 8 x i1> %vc
1330 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i16_3(<vscale x 8 x i16> %va) {
1336 %vc = icmp slt <vscale x 8 x i16> %va, splat (i16 16)
1337 ret <vscale x 8 x i1> %vc
1340 define <vscale x 8 x i1> @icmp_sle_vv_nxv8i16(<vscale x 8 x i16> %va, <vscale x 8 x i16> %vb) {
1346 %vc = icmp sle <vscale x 8 x i16> %va, %vb
1347 ret <vscale x 8 x i1> %vc
1350 define <vscale x 8 x i1> @icmp_sle_vx_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1356 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1357 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1358 %vc = icmp sle <vscale x 8 x i16> %va, %splat
1359 ret <vscale x 8 x i1> %vc
1362 define <vscale x 8 x i1> @icmp_sle_xv_nxv8i16(<vscale x 8 x i16> %va, i16 %b) {
1369 %head = insertelement <vscale x 8 x i16> poison, i16 %b, i32 0
1370 %splat = shufflevector <vscale x 8 x i16> %head, <vscale x 8 x i16> poison, <vscale x 8 x i32> zeroinitializer
1371 %vc = icmp sle <vscale x 8 x i16> %splat, %va
1372 ret <vscale x 8 x i1> %vc
1375 define <vscale x 8 x i1> @icmp_sle_vi_nxv8i16_0(<vscale x 8 x i16> %va) {
1381 %vc = icmp sle <vscale x 8 x i16> %va, splat (i16 5)
1382 ret <vscale x 8 x i1> %vc
1385 define <vscale x 8 x i1> @icmp_eq_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1391 %vc = icmp eq <vscale x 8 x i32> %va, %vb
1392 ret <vscale x 8 x i1> %vc
1395 define <vscale x 8 x i1> @icmp_eq_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1401 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1402 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1403 %vc = icmp eq <vscale x 8 x i32> %va, %splat
1404 ret <vscale x 8 x i1> %vc
1407 define <vscale x 8 x i1> @icmp_eq_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1413 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1414 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1415 %vc = icmp eq <vscale x 8 x i32> %splat, %va
1416 ret <vscale x 8 x i1> %vc
1419 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1425 %vc = icmp eq <vscale x 8 x i32> %va, splat (i32 0)
1426 ret <vscale x 8 x i1> %vc
1429 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i32_1(<vscale x 8 x i32> %va) {
1435 %vc = icmp eq <vscale x 8 x i32> %va, splat (i32 5)
1436 ret <vscale x 8 x i1> %vc
1439 define <vscale x 8 x i1> @icmp_eq_iv_nxv8i32_1(<vscale x 8 x i32> %va) {
1445 %vc = icmp eq <vscale x 8 x i32> splat (i32 5), %va
1446 ret <vscale x 8 x i1> %vc
1449 define <vscale x 8 x i1> @icmp_ne_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1455 %vc = icmp ne <vscale x 8 x i32> %va, %vb
1456 ret <vscale x 8 x i1> %vc
1459 define <vscale x 8 x i1> @icmp_ne_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1465 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1466 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1467 %vc = icmp ne <vscale x 8 x i32> %va, %splat
1468 ret <vscale x 8 x i1> %vc
1471 define <vscale x 8 x i1> @icmp_ne_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1477 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1478 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1479 %vc = icmp ne <vscale x 8 x i32> %splat, %va
1480 ret <vscale x 8 x i1> %vc
1483 define <vscale x 8 x i1> @icmp_ne_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1489 %vc = icmp ne <vscale x 8 x i32> %va, splat (i32 5)
1490 ret <vscale x 8 x i1> %vc
1493 define <vscale x 8 x i1> @icmp_ugt_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1499 %vc = icmp ugt <vscale x 8 x i32> %va, %vb
1500 ret <vscale x 8 x i1> %vc
1503 define <vscale x 8 x i1> @icmp_ugt_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1509 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1510 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1511 %vc = icmp ugt <vscale x 8 x i32> %va, %splat
1512 ret <vscale x 8 x i1> %vc
1515 define <vscale x 8 x i1> @icmp_ugt_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1521 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1522 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1523 %vc = icmp ugt <vscale x 8 x i32> %splat, %va
1524 ret <vscale x 8 x i1> %vc
1527 define <vscale x 8 x i1> @icmp_ugt_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1533 %vc = icmp ugt <vscale x 8 x i32> %va, splat (i32 5)
1534 ret <vscale x 8 x i1> %vc
1537 define <vscale x 8 x i1> @icmp_uge_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1543 %vc = icmp uge <vscale x 8 x i32> %va, %vb
1544 ret <vscale x 8 x i1> %vc
1547 define <vscale x 8 x i1> @icmp_uge_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1554 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1555 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1556 %vc = icmp uge <vscale x 8 x i32> %va, %splat
1557 ret <vscale x 8 x i1> %vc
1560 define <vscale x 8 x i1> @icmp_uge_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1566 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1567 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1568 %vc = icmp uge <vscale x 8 x i32> %splat, %va
1569 ret <vscale x 8 x i1> %vc
1572 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1579 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 -16)
1580 ret <vscale x 8 x i1> %vc
1583 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_1(<vscale x 8 x i32> %va) {
1589 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 15)
1590 ret <vscale x 8 x i1> %vc
1593 define <vscale x 8 x i1> @icmp_uge_iv_nxv8i32_1(<vscale x 8 x i32> %va) {
1599 %vc = icmp uge <vscale x 8 x i32> splat (i32 15), %va
1600 ret <vscale x 8 x i1> %vc
1603 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_2(<vscale x 8 x i32> %va) {
1609 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 0)
1610 ret <vscale x 8 x i1> %vc
1613 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_3(<vscale x 8 x i32> %va) {
1619 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 1)
1620 ret <vscale x 8 x i1> %vc
1623 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_4(<vscale x 8 x i32> %va) {
1629 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 -15)
1630 ret <vscale x 8 x i1> %vc
1633 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i32_5(<vscale x 8 x i32> %va) {
1639 %vc = icmp uge <vscale x 8 x i32> %va, splat (i32 16)
1640 ret <vscale x 8 x i1> %vc
1643 define <vscale x 8 x i1> @icmp_ult_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1649 %vc = icmp ult <vscale x 8 x i32> %va, %vb
1650 ret <vscale x 8 x i1> %vc
1653 define <vscale x 8 x i1> @icmp_ult_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1659 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1660 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1661 %vc = icmp ult <vscale x 8 x i32> %va, %splat
1662 ret <vscale x 8 x i1> %vc
1665 define <vscale x 8 x i1> @icmp_ult_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1671 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1672 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1673 %vc = icmp ult <vscale x 8 x i32> %splat, %va
1674 ret <vscale x 8 x i1> %vc
1677 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1684 %vc = icmp ult <vscale x 8 x i32> %va, splat (i32 -16)
1685 ret <vscale x 8 x i1> %vc
1688 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i32_1(<vscale x 8 x i32> %va) {
1694 %vc = icmp ult <vscale x 8 x i32> %va, splat (i32 -15)
1695 ret <vscale x 8 x i1> %vc
1698 define <vscale x 8 x i1> @icmp_ult_iv_nxv8i32_1(<vscale x 8 x i32> %va) {
1704 %vc = icmp ult <vscale x 8 x i32> splat (i32 -15), %va
1705 ret <vscale x 8 x i1> %vc
1708 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i32_2(<vscale x 8 x i32> %va) {
1714 %vc = icmp ult <vscale x 8 x i32> %va, splat (i32 0)
1715 ret <vscale x 8 x i1> %vc
1718 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i32_3(<vscale x 8 x i32> %va) {
1724 %vc = icmp ult <vscale x 8 x i32> %va, splat (i32 1)
1725 ret <vscale x 8 x i1> %vc
1728 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i32_4(<vscale x 8 x i32> %va) {
1734 %vc = icmp ult <vscale x 8 x i32> %va, splat (i32 16)
1735 ret <vscale x 8 x i1> %vc
1738 define <vscale x 8 x i1> @icmp_ule_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1744 %vc = icmp ule <vscale x 8 x i32> %va, %vb
1745 ret <vscale x 8 x i1> %vc
1748 define <vscale x 8 x i1> @icmp_ule_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1754 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1755 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1756 %vc = icmp ule <vscale x 8 x i32> %va, %splat
1757 ret <vscale x 8 x i1> %vc
1760 define <vscale x 8 x i1> @icmp_ule_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1767 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1768 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1769 %vc = icmp ule <vscale x 8 x i32> %splat, %va
1770 ret <vscale x 8 x i1> %vc
1773 define <vscale x 8 x i1> @icmp_ule_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1779 %vc = icmp ule <vscale x 8 x i32> %va, splat (i32 5)
1780 ret <vscale x 8 x i1> %vc
1783 define <vscale x 8 x i1> @icmp_sgt_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1789 %vc = icmp sgt <vscale x 8 x i32> %va, %vb
1790 ret <vscale x 8 x i1> %vc
1793 define <vscale x 8 x i1> @icmp_sgt_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1799 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1800 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1801 %vc = icmp sgt <vscale x 8 x i32> %va, %splat
1802 ret <vscale x 8 x i1> %vc
1805 define <vscale x 8 x i1> @icmp_sgt_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1811 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1812 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1813 %vc = icmp sgt <vscale x 8 x i32> %splat, %va
1814 ret <vscale x 8 x i1> %vc
1817 define <vscale x 8 x i1> @icmp_sgt_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1823 %vc = icmp sgt <vscale x 8 x i32> %va, splat (i32 5)
1824 ret <vscale x 8 x i1> %vc
1827 define <vscale x 8 x i1> @icmp_sge_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1833 %vc = icmp sge <vscale x 8 x i32> %va, %vb
1834 ret <vscale x 8 x i1> %vc
1837 define <vscale x 8 x i1> @icmp_sge_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1844 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1845 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1846 %vc = icmp sge <vscale x 8 x i32> %va, %splat
1847 ret <vscale x 8 x i1> %vc
1850 define <vscale x 8 x i1> @icmp_sge_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1856 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1857 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1858 %vc = icmp sge <vscale x 8 x i32> %splat, %va
1859 ret <vscale x 8 x i1> %vc
1862 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1869 %vc = icmp sge <vscale x 8 x i32> %va, splat (i32 -16)
1870 ret <vscale x 8 x i1> %vc
1873 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i32_1(<vscale x 8 x i32> %va) {
1879 %vc = icmp sge <vscale x 8 x i32> %va, splat (i32 -15)
1880 ret <vscale x 8 x i1> %vc
1883 define <vscale x 8 x i1> @icmp_sge_iv_nxv8i32_1(<vscale x 8 x i32> %va) {
1889 %vc = icmp sge <vscale x 8 x i32> splat (i32 -15), %va
1890 ret <vscale x 8 x i1> %vc
1893 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i32_2(<vscale x 8 x i32> %va) {
1899 %vc = icmp sge <vscale x 8 x i32> %va, splat (i32 0)
1900 ret <vscale x 8 x i1> %vc
1903 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i32_3(<vscale x 8 x i32> %va) {
1909 %vc = icmp sge <vscale x 8 x i32> %va, splat (i32 16)
1910 ret <vscale x 8 x i1> %vc
1913 define <vscale x 8 x i1> @icmp_slt_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
1919 %vc = icmp slt <vscale x 8 x i32> %va, %vb
1920 ret <vscale x 8 x i1> %vc
1923 define <vscale x 8 x i1> @icmp_slt_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1929 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1930 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1931 %vc = icmp slt <vscale x 8 x i32> %va, %splat
1932 ret <vscale x 8 x i1> %vc
1935 define <vscale x 8 x i1> @icmp_slt_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
1941 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
1942 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
1943 %vc = icmp slt <vscale x 8 x i32> %splat, %va
1944 ret <vscale x 8 x i1> %vc
1947 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
1954 %vc = icmp slt <vscale x 8 x i32> %va, splat (i32 -16)
1955 ret <vscale x 8 x i1> %vc
1958 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i32_1(<vscale x 8 x i32> %va) {
1964 %vc = icmp slt <vscale x 8 x i32> %va, splat (i32 -15)
1965 ret <vscale x 8 x i1> %vc
1968 define <vscale x 8 x i1> @icmp_slt_iv_nxv8i32_1(<vscale x 8 x i32> %va) {
1974 %vc = icmp slt <vscale x 8 x i32> splat (i32 -15), %va
1975 ret <vscale x 8 x i1> %vc
1978 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i32_2(<vscale x 8 x i32> %va) {
1984 %vc = icmp slt <vscale x 8 x i32> %va, splat (i32 0)
1985 ret <vscale x 8 x i1> %vc
1988 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i32_3(<vscale x 8 x i32> %va) {
1994 %vc = icmp slt <vscale x 8 x i32> %va, splat (i32 16)
1995 ret <vscale x 8 x i1> %vc
1998 define <vscale x 8 x i1> @icmp_sle_vv_nxv8i32(<vscale x 8 x i32> %va, <vscale x 8 x i32> %vb) {
2004 %vc = icmp sle <vscale x 8 x i32> %va, %vb
2005 ret <vscale x 8 x i1> %vc
2008 define <vscale x 8 x i1> @icmp_sle_vx_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
2014 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
2015 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
2016 %vc = icmp sle <vscale x 8 x i32> %va, %splat
2017 ret <vscale x 8 x i1> %vc
2020 define <vscale x 8 x i1> @icmp_sle_xv_nxv8i32(<vscale x 8 x i32> %va, i32 %b) {
2027 %head = insertelement <vscale x 8 x i32> poison, i32 %b, i32 0
2028 %splat = shufflevector <vscale x 8 x i32> %head, <vscale x 8 x i32> poison, <vscale x 8 x i32> zeroinitializer
2029 %vc = icmp sle <vscale x 8 x i32> %splat, %va
2030 ret <vscale x 8 x i1> %vc
2033 define <vscale x 8 x i1> @icmp_sle_vi_nxv8i32_0(<vscale x 8 x i32> %va) {
2039 %vc = icmp sle <vscale x 8 x i32> %va, splat (i32 5)
2040 ret <vscale x 8 x i1> %vc
2043 define <vscale x 8 x i1> @icmp_eq_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2049 %vc = icmp eq <vscale x 8 x i64> %va, %vb
2050 ret <vscale x 8 x i1> %vc
2053 define <vscale x 8 x i1> @icmp_eq_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2058 ; RV32-NEXT: sw a0, 8(sp)
2060 ; RV32-NEXT: addi a0, sp, 8
2073 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2074 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2075 %vc = icmp eq <vscale x 8 x i64> %va, %splat
2076 ret <vscale x 8 x i1> %vc
2079 define <vscale x 8 x i1> @icmp_eq_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2084 ; RV32-NEXT: sw a0, 8(sp)
2086 ; RV32-NEXT: addi a0, sp, 8
2099 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2100 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2101 %vc = icmp eq <vscale x 8 x i64> %splat, %va
2102 ret <vscale x 8 x i1> %vc
2105 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2111 %vc = icmp eq <vscale x 8 x i64> %va, splat (i64 0)
2112 ret <vscale x 8 x i1> %vc
2115 define <vscale x 8 x i1> @icmp_eq_vi_nxv8i64_1(<vscale x 8 x i64> %va) {
2121 %vc = icmp eq <vscale x 8 x i64> %va, splat (i64 5)
2122 ret <vscale x 8 x i1> %vc
2125 define <vscale x 8 x i1> @icmp_eq_iv_nxv8i64_1(<vscale x 8 x i64> %va) {
2131 %vc = icmp eq <vscale x 8 x i64> splat (i64 5), %va
2132 ret <vscale x 8 x i1> %vc
2135 define <vscale x 8 x i1> @icmp_ne_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2141 %vc = icmp ne <vscale x 8 x i64> %va, %vb
2142 ret <vscale x 8 x i1> %vc
2145 define <vscale x 8 x i1> @icmp_ne_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2150 ; RV32-NEXT: sw a0, 8(sp)
2152 ; RV32-NEXT: addi a0, sp, 8
2165 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2166 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2167 %vc = icmp ne <vscale x 8 x i64> %va, %splat
2168 ret <vscale x 8 x i1> %vc
2171 define <vscale x 8 x i1> @icmp_ne_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2176 ; RV32-NEXT: sw a0, 8(sp)
2178 ; RV32-NEXT: addi a0, sp, 8
2191 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2192 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2193 %vc = icmp ne <vscale x 8 x i64> %splat, %va
2194 ret <vscale x 8 x i1> %vc
2197 define <vscale x 8 x i1> @icmp_ne_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2203 %vc = icmp ne <vscale x 8 x i64> %va, splat (i64 5)
2204 ret <vscale x 8 x i1> %vc
2207 define <vscale x 8 x i1> @icmp_ugt_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2213 %vc = icmp ugt <vscale x 8 x i64> %va, %vb
2214 ret <vscale x 8 x i1> %vc
2217 define <vscale x 8 x i1> @icmp_ugt_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2222 ; RV32-NEXT: sw a0, 8(sp)
2224 ; RV32-NEXT: addi a0, sp, 8
2237 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2238 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2239 %vc = icmp ugt <vscale x 8 x i64> %va, %splat
2240 ret <vscale x 8 x i1> %vc
2243 define <vscale x 8 x i1> @icmp_ugt_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2248 ; RV32-NEXT: sw a0, 8(sp)
2250 ; RV32-NEXT: addi a0, sp, 8
2263 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2264 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2265 %vc = icmp ugt <vscale x 8 x i64> %splat, %va
2266 ret <vscale x 8 x i1> %vc
2269 define <vscale x 8 x i1> @icmp_ugt_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2275 %vc = icmp ugt <vscale x 8 x i64> %va, splat (i64 5)
2276 ret <vscale x 8 x i1> %vc
2279 define <vscale x 8 x i1> @icmp_uge_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2285 %vc = icmp uge <vscale x 8 x i64> %va, %vb
2286 ret <vscale x 8 x i1> %vc
2289 define <vscale x 8 x i1> @icmp_uge_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2294 ; RV32-NEXT: sw a0, 8(sp)
2296 ; RV32-NEXT: addi a0, sp, 8
2310 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2311 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2312 %vc = icmp uge <vscale x 8 x i64> %va, %splat
2313 ret <vscale x 8 x i1> %vc
2316 define <vscale x 8 x i1> @icmp_uge_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2321 ; RV32-NEXT: sw a0, 8(sp)
2323 ; RV32-NEXT: addi a0, sp, 8
2336 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2337 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2338 %vc = icmp uge <vscale x 8 x i64> %splat, %va
2339 ret <vscale x 8 x i1> %vc
2342 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2349 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 -16)
2350 ret <vscale x 8 x i1> %vc
2353 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_1(<vscale x 8 x i64> %va) {
2359 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 15)
2360 ret <vscale x 8 x i1> %vc
2363 define <vscale x 8 x i1> @icmp_uge_iv_nxv8i64_1(<vscale x 8 x i64> %va) {
2369 %vc = icmp uge <vscale x 8 x i64> splat (i64 15), %va
2370 ret <vscale x 8 x i1> %vc
2373 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_2(<vscale x 8 x i64> %va) {
2379 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 0)
2380 ret <vscale x 8 x i1> %vc
2383 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_3(<vscale x 8 x i64> %va) {
2389 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 1)
2390 ret <vscale x 8 x i1> %vc
2393 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_4(<vscale x 8 x i64> %va) {
2399 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 -15)
2400 ret <vscale x 8 x i1> %vc
2403 define <vscale x 8 x i1> @icmp_uge_vi_nxv8i64_5(<vscale x 8 x i64> %va) {
2409 %vc = icmp uge <vscale x 8 x i64> %va, splat (i64 16)
2410 ret <vscale x 8 x i1> %vc
2413 define <vscale x 8 x i1> @icmp_ult_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2419 %vc = icmp ult <vscale x 8 x i64> %va, %vb
2420 ret <vscale x 8 x i1> %vc
2423 define <vscale x 8 x i1> @icmp_ult_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2428 ; RV32-NEXT: sw a0, 8(sp)
2430 ; RV32-NEXT: addi a0, sp, 8
2443 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2444 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2445 %vc = icmp ult <vscale x 8 x i64> %va, %splat
2446 ret <vscale x 8 x i1> %vc
2449 define <vscale x 8 x i1> @icmp_ult_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2454 ; RV32-NEXT: sw a0, 8(sp)
2456 ; RV32-NEXT: addi a0, sp, 8
2469 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2470 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2471 %vc = icmp ult <vscale x 8 x i64> %splat, %va
2472 ret <vscale x 8 x i1> %vc
2475 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2482 %vc = icmp ult <vscale x 8 x i64> %va, splat (i64 -16)
2483 ret <vscale x 8 x i1> %vc
2486 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i64_1(<vscale x 8 x i64> %va) {
2492 %vc = icmp ult <vscale x 8 x i64> %va, splat (i64 -15)
2493 ret <vscale x 8 x i1> %vc
2496 define <vscale x 8 x i1> @icmp_ult_iv_nxv8i64_1(<vscale x 8 x i64> %va) {
2502 %vc = icmp ult <vscale x 8 x i64> splat (i64 -15), %va
2503 ret <vscale x 8 x i1> %vc
2506 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i64_2(<vscale x 8 x i64> %va) {
2512 %vc = icmp ult <vscale x 8 x i64> %va, splat (i64 0)
2513 ret <vscale x 8 x i1> %vc
2516 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i64_3(<vscale x 8 x i64> %va) {
2522 %vc = icmp ult <vscale x 8 x i64> %va, splat (i64 1)
2523 ret <vscale x 8 x i1> %vc
2526 define <vscale x 8 x i1> @icmp_ult_vi_nxv8i64_4(<vscale x 8 x i64> %va) {
2532 %vc = icmp ult <vscale x 8 x i64> %va, splat (i64 16)
2533 ret <vscale x 8 x i1> %vc
2536 define <vscale x 8 x i1> @icmp_ule_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2542 %vc = icmp ule <vscale x 8 x i64> %va, %vb
2543 ret <vscale x 8 x i1> %vc
2546 define <vscale x 8 x i1> @icmp_ule_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2551 ; RV32-NEXT: sw a0, 8(sp)
2553 ; RV32-NEXT: addi a0, sp, 8
2566 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2567 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2568 %vc = icmp ule <vscale x 8 x i64> %va, %splat
2569 ret <vscale x 8 x i1> %vc
2572 define <vscale x 8 x i1> @icmp_ule_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2577 ; RV32-NEXT: sw a0, 8(sp)
2579 ; RV32-NEXT: addi a0, sp, 8
2593 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2594 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2595 %vc = icmp ule <vscale x 8 x i64> %splat, %va
2596 ret <vscale x 8 x i1> %vc
2599 define <vscale x 8 x i1> @icmp_ule_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2605 %vc = icmp ule <vscale x 8 x i64> %va, splat (i64 5)
2606 ret <vscale x 8 x i1> %vc
2609 define <vscale x 8 x i1> @icmp_sgt_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2615 %vc = icmp sgt <vscale x 8 x i64> %va, %vb
2616 ret <vscale x 8 x i1> %vc
2619 define <vscale x 8 x i1> @icmp_sgt_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2624 ; RV32-NEXT: sw a0, 8(sp)
2626 ; RV32-NEXT: addi a0, sp, 8
2639 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2640 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2641 %vc = icmp sgt <vscale x 8 x i64> %va, %splat
2642 ret <vscale x 8 x i1> %vc
2645 define <vscale x 8 x i1> @icmp_sgt_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2650 ; RV32-NEXT: sw a0, 8(sp)
2652 ; RV32-NEXT: addi a0, sp, 8
2665 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2666 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2667 %vc = icmp sgt <vscale x 8 x i64> %splat, %va
2668 ret <vscale x 8 x i1> %vc
2671 define <vscale x 8 x i1> @icmp_sgt_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2677 %vc = icmp sgt <vscale x 8 x i64> %va, splat (i64 5)
2678 ret <vscale x 8 x i1> %vc
2681 define <vscale x 8 x i1> @icmp_sge_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2687 %vc = icmp sge <vscale x 8 x i64> %va, %vb
2688 ret <vscale x 8 x i1> %vc
2691 define <vscale x 8 x i1> @icmp_sge_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2696 ; RV32-NEXT: sw a0, 8(sp)
2698 ; RV32-NEXT: addi a0, sp, 8
2712 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2713 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2714 %vc = icmp sge <vscale x 8 x i64> %va, %splat
2715 ret <vscale x 8 x i1> %vc
2718 define <vscale x 8 x i1> @icmp_sge_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2723 ; RV32-NEXT: sw a0, 8(sp)
2725 ; RV32-NEXT: addi a0, sp, 8
2738 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2739 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2740 %vc = icmp sge <vscale x 8 x i64> %splat, %va
2741 ret <vscale x 8 x i1> %vc
2744 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2751 %vc = icmp sge <vscale x 8 x i64> %va, splat (i64 -16)
2752 ret <vscale x 8 x i1> %vc
2755 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i64_1(<vscale x 8 x i64> %va) {
2761 %vc = icmp sge <vscale x 8 x i64> %va, splat (i64 -15)
2762 ret <vscale x 8 x i1> %vc
2765 define <vscale x 8 x i1> @icmp_sge_iv_nxv8i64_1(<vscale x 8 x i64> %va) {
2771 %vc = icmp sge <vscale x 8 x i64> splat (i64 -15), %va
2772 ret <vscale x 8 x i1> %vc
2775 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i64_2(<vscale x 8 x i64> %va) {
2781 %vc = icmp sge <vscale x 8 x i64> %va, splat (i64 0)
2782 ret <vscale x 8 x i1> %vc
2785 define <vscale x 8 x i1> @icmp_sge_vi_nxv8i64_3(<vscale x 8 x i64> %va) {
2791 %vc = icmp sge <vscale x 8 x i64> %va, splat (i64 16)
2792 ret <vscale x 8 x i1> %vc
2795 define <vscale x 8 x i1> @icmp_slt_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2801 %vc = icmp slt <vscale x 8 x i64> %va, %vb
2802 ret <vscale x 8 x i1> %vc
2805 define <vscale x 8 x i1> @icmp_slt_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2810 ; RV32-NEXT: sw a0, 8(sp)
2812 ; RV32-NEXT: addi a0, sp, 8
2825 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2826 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2827 %vc = icmp slt <vscale x 8 x i64> %va, %splat
2828 ret <vscale x 8 x i1> %vc
2831 define <vscale x 8 x i1> @icmp_slt_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2836 ; RV32-NEXT: sw a0, 8(sp)
2838 ; RV32-NEXT: addi a0, sp, 8
2851 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2852 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2853 %vc = icmp slt <vscale x 8 x i64> %splat, %va
2854 ret <vscale x 8 x i1> %vc
2857 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2864 %vc = icmp slt <vscale x 8 x i64> %va, splat (i64 -16)
2865 ret <vscale x 8 x i1> %vc
2868 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i64_1(<vscale x 8 x i64> %va) {
2874 %vc = icmp slt <vscale x 8 x i64> %va, splat (i64 -15)
2875 ret <vscale x 8 x i1> %vc
2878 define <vscale x 8 x i1> @icmp_slt_iv_nxv8i64_1(<vscale x 8 x i64> %va) {
2884 %vc = icmp slt <vscale x 8 x i64> splat (i64 -15), %va
2885 ret <vscale x 8 x i1> %vc
2888 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i64_2(<vscale x 8 x i64> %va) {
2894 %vc = icmp slt <vscale x 8 x i64> %va, splat (i64 0)
2895 ret <vscale x 8 x i1> %vc
2898 define <vscale x 8 x i1> @icmp_slt_vi_nxv8i64_3(<vscale x 8 x i64> %va) {
2904 %vc = icmp slt <vscale x 8 x i64> %va, splat (i64 16)
2905 ret <vscale x 8 x i1> %vc
2908 define <vscale x 8 x i1> @icmp_sle_vv_nxv8i64(<vscale x 8 x i64> %va, <vscale x 8 x i64> %vb) {
2914 %vc = icmp sle <vscale x 8 x i64> %va, %vb
2915 ret <vscale x 8 x i1> %vc
2918 define <vscale x 8 x i1> @icmp_sle_vx_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2923 ; RV32-NEXT: sw a0, 8(sp)
2925 ; RV32-NEXT: addi a0, sp, 8
2938 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2939 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2940 %vc = icmp sle <vscale x 8 x i64> %va, %splat
2941 ret <vscale x 8 x i1> %vc
2944 define <vscale x 8 x i1> @icmp_sle_xv_nxv8i64(<vscale x 8 x i64> %va, i64 %b) {
2949 ; RV32-NEXT: sw a0, 8(sp)
2951 ; RV32-NEXT: addi a0, sp, 8
2965 %head = insertelement <vscale x 8 x i64> poison, i64 %b, i32 0
2966 %splat = shufflevector <vscale x 8 x i64> %head, <vscale x 8 x i64> poison, <vscale x 8 x i32> zeroinitializer
2967 %vc = icmp sle <vscale x 8 x i64> %splat, %va
2968 ret <vscale x 8 x i1> %vc
2971 define <vscale x 8 x i1> @icmp_sle_vi_nxv8i64_0(<vscale x 8 x i64> %va) {
2977 %vc = icmp sle <vscale x 8 x i64> %va, splat (i64 5)
2978 ret <vscale x 8 x i1> %vc
2985 define <vscale x 8 x i1> @icmp_eq_ii_nxv8i8() {
2991 %vc = icmp eq <vscale x 8 x i8> splat (i8 5), splat (i8 2)
2992 ret <vscale x 8 x i1> %vc