@@ -401,11 +401,10 @@ define void @masked_load_sext_v32i8i16(ptr %ap, ptr %bp, ptr %c) #0 {
401
401
define void @masked_load_sext_v16i8i32 (ptr %ap , ptr %bp , ptr %c ) #0 {
402
402
; VBITS_GE_256-LABEL: masked_load_sext_v16i8i32:
403
403
; VBITS_GE_256: // %bb.0:
404
- ; VBITS_GE_256-NEXT: ldr q0, [x1]
405
404
; VBITS_GE_256-NEXT: ptrue p0.b, vl16
405
+ ; VBITS_GE_256-NEXT: ldr q0, [x1]
406
406
; VBITS_GE_256-NEXT: mov x8, #8 // =0x8
407
- ; VBITS_GE_256-NEXT: cmeq v0.16b, v0.16b, #0
408
- ; VBITS_GE_256-NEXT: cmpne p0.b, p0/z, z0.b, #0
407
+ ; VBITS_GE_256-NEXT: cmpeq p0.b, p0/z, z0.b, #0
409
408
; VBITS_GE_256-NEXT: ld1b { z0.b }, p0/z, [x0]
410
409
; VBITS_GE_256-NEXT: ptrue p0.s, vl8
411
410
; VBITS_GE_256-NEXT: ext v1.16b, v0.16b, v0.16b, #8
@@ -436,11 +435,10 @@ define void @masked_load_sext_v16i8i32(ptr %ap, ptr %bp, ptr %c) #0 {
436
435
define void @masked_load_sext_v8i8i64 (ptr %ap , ptr %bp , ptr %c ) #0 {
437
436
; VBITS_GE_256-LABEL: masked_load_sext_v8i8i64:
438
437
; VBITS_GE_256: // %bb.0:
439
- ; VBITS_GE_256-NEXT: ldr d0, [x1]
440
438
; VBITS_GE_256-NEXT: ptrue p0.b, vl8
439
+ ; VBITS_GE_256-NEXT: ldr d0, [x1]
441
440
; VBITS_GE_256-NEXT: mov x8, #4 // =0x4
442
- ; VBITS_GE_256-NEXT: cmeq v0.8b, v0.8b, #0
443
- ; VBITS_GE_256-NEXT: cmpne p0.b, p0/z, z0.b, #0
441
+ ; VBITS_GE_256-NEXT: cmpeq p0.b, p0/z, z0.b, #0
444
442
; VBITS_GE_256-NEXT: ld1b { z0.b }, p0/z, [x0]
445
443
; VBITS_GE_256-NEXT: ptrue p0.d, vl4
446
444
; VBITS_GE_256-NEXT: sshll v0.8h, v0.8b, #0
@@ -504,11 +502,10 @@ define void @masked_load_sext_v16i16i32(ptr %ap, ptr %bp, ptr %c) #0 {
504
502
define void @masked_load_sext_v8i16i64 (ptr %ap , ptr %bp , ptr %c ) #0 {
505
503
; VBITS_GE_256-LABEL: masked_load_sext_v8i16i64:
506
504
; VBITS_GE_256: // %bb.0:
507
- ; VBITS_GE_256-NEXT: ldr q0, [x1]
508
505
; VBITS_GE_256-NEXT: ptrue p0.h, vl8
506
+ ; VBITS_GE_256-NEXT: ldr q0, [x1]
509
507
; VBITS_GE_256-NEXT: mov x8, #4 // =0x4
510
- ; VBITS_GE_256-NEXT: cmeq v0.8h, v0.8h, #0
511
- ; VBITS_GE_256-NEXT: cmpne p0.h, p0/z, z0.h, #0
508
+ ; VBITS_GE_256-NEXT: cmpeq p0.h, p0/z, z0.h, #0
512
509
; VBITS_GE_256-NEXT: ld1h { z0.h }, p0/z, [x0]
513
510
; VBITS_GE_256-NEXT: ptrue p0.d, vl4
514
511
; VBITS_GE_256-NEXT: ext v1.16b, v0.16b, v0.16b, #8
@@ -603,11 +600,10 @@ define void @masked_load_zext_v32i8i16(ptr %ap, ptr %bp, ptr %c) #0 {
603
600
define void @masked_load_zext_v16i8i32 (ptr %ap , ptr %bp , ptr %c ) #0 {
604
601
; VBITS_GE_256-LABEL: masked_load_zext_v16i8i32:
605
602
; VBITS_GE_256: // %bb.0:
606
- ; VBITS_GE_256-NEXT: ldr q0, [x1]
607
603
; VBITS_GE_256-NEXT: ptrue p0.b, vl16
604
+ ; VBITS_GE_256-NEXT: ldr q0, [x1]
608
605
; VBITS_GE_256-NEXT: mov x8, #8 // =0x8
609
- ; VBITS_GE_256-NEXT: cmeq v0.16b, v0.16b, #0
610
- ; VBITS_GE_256-NEXT: cmpne p0.b, p0/z, z0.b, #0
606
+ ; VBITS_GE_256-NEXT: cmpeq p0.b, p0/z, z0.b, #0
611
607
; VBITS_GE_256-NEXT: ld1b { z0.b }, p0/z, [x0]
612
608
; VBITS_GE_256-NEXT: ptrue p0.s, vl8
613
609
; VBITS_GE_256-NEXT: ext v1.16b, v0.16b, v0.16b, #8
@@ -638,11 +634,10 @@ define void @masked_load_zext_v16i8i32(ptr %ap, ptr %bp, ptr %c) #0 {
638
634
define void @masked_load_zext_v8i8i64 (ptr %ap , ptr %bp , ptr %c ) #0 {
639
635
; VBITS_GE_256-LABEL: masked_load_zext_v8i8i64:
640
636
; VBITS_GE_256: // %bb.0:
641
- ; VBITS_GE_256-NEXT: ldr d0, [x1]
642
637
; VBITS_GE_256-NEXT: ptrue p0.b, vl8
638
+ ; VBITS_GE_256-NEXT: ldr d0, [x1]
643
639
; VBITS_GE_256-NEXT: mov x8, #4 // =0x4
644
- ; VBITS_GE_256-NEXT: cmeq v0.8b, v0.8b, #0
645
- ; VBITS_GE_256-NEXT: cmpne p0.b, p0/z, z0.b, #0
640
+ ; VBITS_GE_256-NEXT: cmpeq p0.b, p0/z, z0.b, #0
646
641
; VBITS_GE_256-NEXT: ld1b { z0.b }, p0/z, [x0]
647
642
; VBITS_GE_256-NEXT: ptrue p0.d, vl4
648
643
; VBITS_GE_256-NEXT: ushll v0.8h, v0.8b, #0
@@ -706,11 +701,10 @@ define void @masked_load_zext_v16i16i32(ptr %ap, ptr %bp, ptr %c) #0 {
706
701
define void @masked_load_zext_v8i16i64 (ptr %ap , ptr %bp , ptr %c ) #0 {
707
702
; VBITS_GE_256-LABEL: masked_load_zext_v8i16i64:
708
703
; VBITS_GE_256: // %bb.0:
709
- ; VBITS_GE_256-NEXT: ldr q0, [x1]
710
704
; VBITS_GE_256-NEXT: ptrue p0.h, vl8
705
+ ; VBITS_GE_256-NEXT: ldr q0, [x1]
711
706
; VBITS_GE_256-NEXT: mov x8, #4 // =0x4
712
- ; VBITS_GE_256-NEXT: cmeq v0.8h, v0.8h, #0
713
- ; VBITS_GE_256-NEXT: cmpne p0.h, p0/z, z0.h, #0
707
+ ; VBITS_GE_256-NEXT: cmpeq p0.h, p0/z, z0.h, #0
714
708
; VBITS_GE_256-NEXT: ld1h { z0.h }, p0/z, [x0]
715
709
; VBITS_GE_256-NEXT: ptrue p0.d, vl4
716
710
; VBITS_GE_256-NEXT: ext v1.16b, v0.16b, v0.16b, #8
0 commit comments