Skip to content

Commit 785b28e

Browse files
committed
Address comments
1 parent 357b111 commit 785b28e

File tree

1 file changed

+28
-4
lines changed

1 file changed

+28
-4
lines changed

llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll

Lines changed: 28 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,32 @@
66

77
target triple = "aarch64-unknown-linux-gnu"
88

9-
define <4 x i32> @sdiv_v4i32_packed(<4 x i32> %op1) vscale_range(1,0) #0 {
10-
; CHECK-LABEL: sdiv_v4i32_packed:
9+
define <4 x i32> @sdiv_v4i32_negative_pow2_divisor_packed(<4 x i32> %op1) vscale_range(1,0) #0 {
10+
; CHECK-LABEL: sdiv_v4i32_negative_pow2_divisor_packed:
11+
; CHECK: // %bb.0:
12+
; CHECK-NEXT: cmlt v1.4s, v0.4s, #0
13+
; CHECK-NEXT: usra v0.4s, v1.4s, #29
14+
; CHECK-NEXT: sshr v0.4s, v0.4s, #3
15+
; CHECK-NEXT: neg v0.4s, v0.4s
16+
; CHECK-NEXT: ret
17+
%res = sdiv <4 x i32> %op1, splat (i32 -8)
18+
ret <4 x i32> %res
19+
}
20+
21+
define <2 x i32> @sdiv_v2i32_negative_pow2_divisor_unpacked(<2 x i32> %op1) vscale_range(1,0) #0 {
22+
; CHECK-LABEL: sdiv_v2i32_negative_pow2_divisor_unpacked:
23+
; CHECK: // %bb.0:
24+
; CHECK-NEXT: cmlt v1.2s, v0.2s, #0
25+
; CHECK-NEXT: usra v0.2s, v1.2s, #29
26+
; CHECK-NEXT: sshr v0.2s, v0.2s, #3
27+
; CHECK-NEXT: neg v0.2s, v0.2s
28+
; CHECK-NEXT: ret
29+
%res = sdiv <2 x i32> %op1, splat (i32 -8)
30+
ret <2 x i32> %res
31+
}
32+
33+
define <4 x i32> @sdiv_v4i32_positive_pow2_divisor_packed(<4 x i32> %op1) vscale_range(1,0) #0 {
34+
; CHECK-LABEL: sdiv_v4i32_positive_pow2_divisor_packed:
1135
; CHECK: // %bb.0:
1236
; CHECK-NEXT: cmlt v1.4s, v0.4s, #0
1337
; CHECK-NEXT: usra v0.4s, v1.4s, #29
@@ -17,8 +41,8 @@ define <4 x i32> @sdiv_v4i32_packed(<4 x i32> %op1) vscale_range(1,0) #0 {
1741
ret <4 x i32> %res
1842
}
1943

20-
define <2 x i32> @sdiv_v2i32_unpacked(<2 x i32> %op1) vscale_range(1,0) #0 {
21-
; CHECK-LABEL: sdiv_v2i32_unpacked:
44+
define <2 x i32> @sdiv_v2i32_positive_pow2_divisor_unpacked(<2 x i32> %op1) vscale_range(1,0) #0 {
45+
; CHECK-LABEL: sdiv_v2i32_positive_pow2_divisor_unpacked:
2246
; CHECK: // %bb.0:
2347
; CHECK-NEXT: cmlt v1.2s, v0.2s, #0
2448
; CHECK-NEXT: usra v0.2s, v1.2s, #29

0 commit comments

Comments
 (0)