aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll')
-rw-r--r--llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll50
1 files changed, 28 insertions, 22 deletions
diff --git a/llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll b/llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
index 328815b60138..34f7c6db5c39 100644
--- a/llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
+++ b/llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
@@ -29,17 +29,20 @@ define <4 x i32> @test_srem_odd_25(<4 x i32> %X) nounwind {
define <4 x i32> @test_srem_even_100(<4 x i32> %X) nounwind {
; CHECK-LABEL: test_srem_even_100:
; CHECK: // %bb.0:
-; CHECK-NEXT: mov w8, #34079
-; CHECK-NEXT: movk w8, #20971, lsl #16
-; CHECK-NEXT: dup v2.4s, w8
-; CHECK-NEXT: smull2 v3.2d, v0.4s, v2.4s
-; CHECK-NEXT: smull v2.2d, v0.2s, v2.2s
-; CHECK-NEXT: uzp2 v2.4s, v2.4s, v3.4s
-; CHECK-NEXT: sshr v3.4s, v2.4s, #5
-; CHECK-NEXT: movi v1.4s, #100
-; CHECK-NEXT: usra v3.4s, v2.4s, #31
-; CHECK-NEXT: mls v0.4s, v3.4s, v1.4s
-; CHECK-NEXT: cmeq v0.4s, v0.4s, #0
+; CHECK-NEXT: mov w8, #23593
+; CHECK-NEXT: mov w9, #47184
+; CHECK-NEXT: movk w8, #49807, lsl #16
+; CHECK-NEXT: movk w9, #1310, lsl #16
+; CHECK-NEXT: dup v1.4s, w8
+; CHECK-NEXT: dup v2.4s, w9
+; CHECK-NEXT: mov w10, #23592
+; CHECK-NEXT: mla v2.4s, v0.4s, v1.4s
+; CHECK-NEXT: movk w10, #655, lsl #16
+; CHECK-NEXT: shl v0.4s, v2.4s, #30
+; CHECK-NEXT: ushr v1.4s, v2.4s, #2
+; CHECK-NEXT: dup v3.4s, w10
+; CHECK-NEXT: orr v0.16b, v1.16b, v0.16b
+; CHECK-NEXT: cmhs v0.4s, v3.4s, v0.4s
; CHECK-NEXT: movi v1.4s, #1
; CHECK-NEXT: and v0.16b, v0.16b, v1.16b
; CHECK-NEXT: ret
@@ -79,17 +82,20 @@ define <4 x i32> @test_srem_odd_neg25(<4 x i32> %X) nounwind {
define <4 x i32> @test_srem_even_neg100(<4 x i32> %X) nounwind {
; CHECK-LABEL: test_srem_even_neg100:
; CHECK: // %bb.0:
-; CHECK-NEXT: adrp x8, .LCPI3_0
-; CHECK-NEXT: ldr q1, [x8, :lo12:.LCPI3_0]
-; CHECK-NEXT: adrp x8, .LCPI3_1
-; CHECK-NEXT: ldr q2, [x8, :lo12:.LCPI3_1]
-; CHECK-NEXT: smull2 v3.2d, v0.4s, v1.4s
-; CHECK-NEXT: smull v1.2d, v0.2s, v1.2s
-; CHECK-NEXT: uzp2 v1.4s, v1.4s, v3.4s
-; CHECK-NEXT: sshr v3.4s, v1.4s, #5
-; CHECK-NEXT: usra v3.4s, v1.4s, #31
-; CHECK-NEXT: mls v0.4s, v3.4s, v2.4s
-; CHECK-NEXT: cmeq v0.4s, v0.4s, #0
+; CHECK-NEXT: mov w8, #23593
+; CHECK-NEXT: mov w9, #47184
+; CHECK-NEXT: movk w8, #49807, lsl #16
+; CHECK-NEXT: movk w9, #1310, lsl #16
+; CHECK-NEXT: dup v1.4s, w8
+; CHECK-NEXT: dup v2.4s, w9
+; CHECK-NEXT: mov w10, #23592
+; CHECK-NEXT: mla v2.4s, v0.4s, v1.4s
+; CHECK-NEXT: movk w10, #655, lsl #16
+; CHECK-NEXT: shl v0.4s, v2.4s, #30
+; CHECK-NEXT: ushr v1.4s, v2.4s, #2
+; CHECK-NEXT: dup v3.4s, w10
+; CHECK-NEXT: orr v0.16b, v1.16b, v0.16b
+; CHECK-NEXT: cmhs v0.4s, v3.4s, v0.4s
; CHECK-NEXT: movi v1.4s, #1
; CHECK-NEXT: and v0.16b, v0.16b, v1.16b
; CHECK-NEXT: ret