You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
+8-40Lines changed: 8 additions & 40 deletions
Original file line number
Diff line number
Diff line change
@@ -516,16 +516,8 @@ define <vscale x 4 x i32> @udot_no_bin_op(<vscale x 4 x i32> %acc, <vscale x 16
516
516
;
517
517
; CHECK-NEWLOWERING-LABEL: udot_no_bin_op:
518
518
; CHECK-NEWLOWERING: // %bb.0:
519
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z2.h, z1.b
520
-
; CHECK-NEWLOWERING-NEXT: uunpklo z1.h, z1.b
521
-
; CHECK-NEWLOWERING-NEXT: uunpklo z3.s, z2.h
522
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z4.s, z1.h
523
-
; CHECK-NEWLOWERING-NEXT: uunpklo z1.s, z1.h
524
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z2.s, z2.h
525
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z1.s
526
-
; CHECK-NEWLOWERING-NEXT: add z1.s, z4.s, z3.s
527
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z1.s
528
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z2.s
519
+
; CHECK-NEWLOWERING-NEXT: mov z2.b, #1 // =0x1
520
+
; CHECK-NEWLOWERING-NEXT: udot z0.s, z1.b, z2.b
529
521
; CHECK-NEWLOWERING-NEXT: ret
530
522
%a.ext = zext <vscale x 16 x i8> %ato <vscale x 16 x i32>
531
523
%partial.reduce = tailcall <vscale x 4 x i32> @llvm.experimental.vector.partial.reduce.add.nxv4i32.nxv16i32(<vscale x 4 x i32> %acc, <vscale x 16 x i32> %a.ext)
@@ -541,16 +533,8 @@ define <vscale x 4 x i32> @sdot_no_bin_op(<vscale x 4 x i32> %acc, <vscale x 16
541
533
;
542
534
; CHECK-NEWLOWERING-LABEL: sdot_no_bin_op:
543
535
; CHECK-NEWLOWERING: // %bb.0:
544
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z2.h, z1.b
545
-
; CHECK-NEWLOWERING-NEXT: sunpklo z1.h, z1.b
546
-
; CHECK-NEWLOWERING-NEXT: sunpklo z3.s, z2.h
547
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z4.s, z1.h
548
-
; CHECK-NEWLOWERING-NEXT: sunpklo z1.s, z1.h
549
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z2.s, z2.h
550
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z1.s
551
-
; CHECK-NEWLOWERING-NEXT: add z1.s, z4.s, z3.s
552
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z1.s
553
-
; CHECK-NEWLOWERING-NEXT: add z0.s, z0.s, z2.s
536
+
; CHECK-NEWLOWERING-NEXT: mov z2.b, #1 // =0x1
537
+
; CHECK-NEWLOWERING-NEXT: sdot z0.s, z1.b, z2.b
554
538
; CHECK-NEWLOWERING-NEXT: ret
555
539
%a.ext = sext <vscale x 16 x i8> %ato <vscale x 16 x i32>
556
540
%partial.reduce = tailcall <vscale x 4 x i32> @llvm.experimental.vector.partial.reduce.add.nxv4i32.nxv16i32(<vscale x 4 x i32> %acc, <vscale x 16 x i32> %a.ext)
@@ -566,16 +550,8 @@ define <vscale x 2 x i64> @udot_no_bin_op_wide(<vscale x 2 x i64> %acc, <vscale
566
550
;
567
551
; CHECK-NEWLOWERING-LABEL: udot_no_bin_op_wide:
568
552
; CHECK-NEWLOWERING: // %bb.0: // %entry
569
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z2.s, z1.h
570
-
; CHECK-NEWLOWERING-NEXT: uunpklo z1.s, z1.h
571
-
; CHECK-NEWLOWERING-NEXT: uunpklo z3.d, z2.s
572
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z4.d, z1.s
573
-
; CHECK-NEWLOWERING-NEXT: uunpklo z1.d, z1.s
574
-
; CHECK-NEWLOWERING-NEXT: uunpkhi z2.d, z2.s
575
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z1.d
576
-
; CHECK-NEWLOWERING-NEXT: add z1.d, z4.d, z3.d
577
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z1.d
578
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z2.d
553
+
; CHECK-NEWLOWERING-NEXT: mov z2.h, #1 // =0x1
554
+
; CHECK-NEWLOWERING-NEXT: udot z0.d, z1.h, z2.h
579
555
; CHECK-NEWLOWERING-NEXT: ret
580
556
entry:
581
557
%a.wide = zext <vscale x 8 x i16> %ato <vscale x 8 x i64>
@@ -592,16 +568,8 @@ define <vscale x 2 x i64> @sdot_no_bin_op_wide(<vscale x 2 x i64> %acc, <vscale
592
568
;
593
569
; CHECK-NEWLOWERING-LABEL: sdot_no_bin_op_wide:
594
570
; CHECK-NEWLOWERING: // %bb.0: // %entry
595
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z2.s, z1.h
596
-
; CHECK-NEWLOWERING-NEXT: sunpklo z1.s, z1.h
597
-
; CHECK-NEWLOWERING-NEXT: sunpklo z3.d, z2.s
598
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z4.d, z1.s
599
-
; CHECK-NEWLOWERING-NEXT: sunpklo z1.d, z1.s
600
-
; CHECK-NEWLOWERING-NEXT: sunpkhi z2.d, z2.s
601
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z1.d
602
-
; CHECK-NEWLOWERING-NEXT: add z1.d, z4.d, z3.d
603
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z1.d
604
-
; CHECK-NEWLOWERING-NEXT: add z0.d, z0.d, z2.d
571
+
; CHECK-NEWLOWERING-NEXT: mov z2.h, #1 // =0x1
572
+
; CHECK-NEWLOWERING-NEXT: sdot z0.d, z1.h, z2.h
605
573
; CHECK-NEWLOWERING-NEXT: ret
606
574
entry:
607
575
%a.wide = sext <vscale x 8 x i16> %ato <vscale x 8 x i64>
0 commit comments