Skip to content

Commit fb8421a

Browse files
committed
[ARM] vaba.ll - regenerate test checks
Cleanup for #94504
1 parent 9182551 commit fb8421a

File tree

1 file changed

+157
-36
lines changed

1 file changed

+157
-36
lines changed

llvm/test/CodeGen/ARM/vaba.ll

Lines changed: 157 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
12
; RUN: llc -mtriple=arm-eabi -mattr=+neon %s -o - | FileCheck %s
23

34
define <8 x i8> @vabas8(ptr %A, ptr %B, ptr %C) nounwind {
4-
;CHECK-LABEL: vabas8:
5-
;CHECK: vaba.s8
5+
; CHECK-LABEL: vabas8:
6+
; CHECK: @ %bb.0:
7+
; CHECK-NEXT: vldr d16, [r2]
8+
; CHECK-NEXT: vldr d17, [r1]
9+
; CHECK-NEXT: vldr d18, [r0]
10+
; CHECK-NEXT: vaba.s8 d18, d17, d16
11+
; CHECK-NEXT: vmov r0, r1, d18
12+
; CHECK-NEXT: mov pc, lr
613
%tmp1 = load <8 x i8>, ptr %A
714
%tmp2 = load <8 x i8>, ptr %B
815
%tmp3 = load <8 x i8>, ptr %C
@@ -12,8 +19,14 @@ define <8 x i8> @vabas8(ptr %A, ptr %B, ptr %C) nounwind {
1219
}
1320

1421
define <4 x i16> @vabas16(ptr %A, ptr %B, ptr %C) nounwind {
15-
;CHECK-LABEL: vabas16:
16-
;CHECK: vaba.s16
22+
; CHECK-LABEL: vabas16:
23+
; CHECK: @ %bb.0:
24+
; CHECK-NEXT: vldr d16, [r2]
25+
; CHECK-NEXT: vldr d17, [r1]
26+
; CHECK-NEXT: vldr d18, [r0]
27+
; CHECK-NEXT: vaba.s16 d18, d17, d16
28+
; CHECK-NEXT: vmov r0, r1, d18
29+
; CHECK-NEXT: mov pc, lr
1730
%tmp1 = load <4 x i16>, ptr %A
1831
%tmp2 = load <4 x i16>, ptr %B
1932
%tmp3 = load <4 x i16>, ptr %C
@@ -23,8 +36,14 @@ define <4 x i16> @vabas16(ptr %A, ptr %B, ptr %C) nounwind {
2336
}
2437

2538
define <2 x i32> @vabas32(ptr %A, ptr %B, ptr %C) nounwind {
26-
;CHECK-LABEL: vabas32:
27-
;CHECK: vaba.s32
39+
; CHECK-LABEL: vabas32:
40+
; CHECK: @ %bb.0:
41+
; CHECK-NEXT: vldr d16, [r2]
42+
; CHECK-NEXT: vldr d17, [r1]
43+
; CHECK-NEXT: vldr d18, [r0]
44+
; CHECK-NEXT: vaba.s32 d18, d17, d16
45+
; CHECK-NEXT: vmov r0, r1, d18
46+
; CHECK-NEXT: mov pc, lr
2847
%tmp1 = load <2 x i32>, ptr %A
2948
%tmp2 = load <2 x i32>, ptr %B
3049
%tmp3 = load <2 x i32>, ptr %C
@@ -34,8 +53,14 @@ define <2 x i32> @vabas32(ptr %A, ptr %B, ptr %C) nounwind {
3453
}
3554

3655
define <8 x i8> @vabau8(ptr %A, ptr %B, ptr %C) nounwind {
37-
;CHECK-LABEL: vabau8:
38-
;CHECK: vaba.u8
56+
; CHECK-LABEL: vabau8:
57+
; CHECK: @ %bb.0:
58+
; CHECK-NEXT: vldr d16, [r2]
59+
; CHECK-NEXT: vldr d17, [r1]
60+
; CHECK-NEXT: vldr d18, [r0]
61+
; CHECK-NEXT: vaba.u8 d18, d17, d16
62+
; CHECK-NEXT: vmov r0, r1, d18
63+
; CHECK-NEXT: mov pc, lr
3964
%tmp1 = load <8 x i8>, ptr %A
4065
%tmp2 = load <8 x i8>, ptr %B
4166
%tmp3 = load <8 x i8>, ptr %C
@@ -45,8 +70,14 @@ define <8 x i8> @vabau8(ptr %A, ptr %B, ptr %C) nounwind {
4570
}
4671

4772
define <4 x i16> @vabau16(ptr %A, ptr %B, ptr %C) nounwind {
48-
;CHECK-LABEL: vabau16:
49-
;CHECK: vaba.u16
73+
; CHECK-LABEL: vabau16:
74+
; CHECK: @ %bb.0:
75+
; CHECK-NEXT: vldr d16, [r2]
76+
; CHECK-NEXT: vldr d17, [r1]
77+
; CHECK-NEXT: vldr d18, [r0]
78+
; CHECK-NEXT: vaba.u16 d18, d17, d16
79+
; CHECK-NEXT: vmov r0, r1, d18
80+
; CHECK-NEXT: mov pc, lr
5081
%tmp1 = load <4 x i16>, ptr %A
5182
%tmp2 = load <4 x i16>, ptr %B
5283
%tmp3 = load <4 x i16>, ptr %C
@@ -56,8 +87,14 @@ define <4 x i16> @vabau16(ptr %A, ptr %B, ptr %C) nounwind {
5687
}
5788

5889
define <2 x i32> @vabau32(ptr %A, ptr %B, ptr %C) nounwind {
59-
;CHECK-LABEL: vabau32:
60-
;CHECK: vaba.u32
90+
; CHECK-LABEL: vabau32:
91+
; CHECK: @ %bb.0:
92+
; CHECK-NEXT: vldr d16, [r2]
93+
; CHECK-NEXT: vldr d17, [r1]
94+
; CHECK-NEXT: vldr d18, [r0]
95+
; CHECK-NEXT: vaba.u32 d18, d17, d16
96+
; CHECK-NEXT: vmov r0, r1, d18
97+
; CHECK-NEXT: mov pc, lr
6198
%tmp1 = load <2 x i32>, ptr %A
6299
%tmp2 = load <2 x i32>, ptr %B
63100
%tmp3 = load <2 x i32>, ptr %C
@@ -67,8 +104,15 @@ define <2 x i32> @vabau32(ptr %A, ptr %B, ptr %C) nounwind {
67104
}
68105

69106
define <16 x i8> @vabaQs8(ptr %A, ptr %B, ptr %C) nounwind {
70-
;CHECK-LABEL: vabaQs8:
71-
;CHECK: vaba.s8
107+
; CHECK-LABEL: vabaQs8:
108+
; CHECK: @ %bb.0:
109+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
110+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
111+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
112+
; CHECK-NEXT: vaba.s8 q10, q9, q8
113+
; CHECK-NEXT: vmov r0, r1, d20
114+
; CHECK-NEXT: vmov r2, r3, d21
115+
; CHECK-NEXT: mov pc, lr
72116
%tmp1 = load <16 x i8>, ptr %A
73117
%tmp2 = load <16 x i8>, ptr %B
74118
%tmp3 = load <16 x i8>, ptr %C
@@ -78,8 +122,15 @@ define <16 x i8> @vabaQs8(ptr %A, ptr %B, ptr %C) nounwind {
78122
}
79123

80124
define <8 x i16> @vabaQs16(ptr %A, ptr %B, ptr %C) nounwind {
81-
;CHECK-LABEL: vabaQs16:
82-
;CHECK: vaba.s16
125+
; CHECK-LABEL: vabaQs16:
126+
; CHECK: @ %bb.0:
127+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
128+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
129+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
130+
; CHECK-NEXT: vaba.s16 q10, q9, q8
131+
; CHECK-NEXT: vmov r0, r1, d20
132+
; CHECK-NEXT: vmov r2, r3, d21
133+
; CHECK-NEXT: mov pc, lr
83134
%tmp1 = load <8 x i16>, ptr %A
84135
%tmp2 = load <8 x i16>, ptr %B
85136
%tmp3 = load <8 x i16>, ptr %C
@@ -89,8 +140,15 @@ define <8 x i16> @vabaQs16(ptr %A, ptr %B, ptr %C) nounwind {
89140
}
90141

91142
define <4 x i32> @vabaQs32(ptr %A, ptr %B, ptr %C) nounwind {
92-
;CHECK-LABEL: vabaQs32:
93-
;CHECK: vaba.s32
143+
; CHECK-LABEL: vabaQs32:
144+
; CHECK: @ %bb.0:
145+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
146+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
147+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
148+
; CHECK-NEXT: vaba.s32 q10, q9, q8
149+
; CHECK-NEXT: vmov r0, r1, d20
150+
; CHECK-NEXT: vmov r2, r3, d21
151+
; CHECK-NEXT: mov pc, lr
94152
%tmp1 = load <4 x i32>, ptr %A
95153
%tmp2 = load <4 x i32>, ptr %B
96154
%tmp3 = load <4 x i32>, ptr %C
@@ -100,8 +158,15 @@ define <4 x i32> @vabaQs32(ptr %A, ptr %B, ptr %C) nounwind {
100158
}
101159

102160
define <16 x i8> @vabaQu8(ptr %A, ptr %B, ptr %C) nounwind {
103-
;CHECK-LABEL: vabaQu8:
104-
;CHECK: vaba.u8
161+
; CHECK-LABEL: vabaQu8:
162+
; CHECK: @ %bb.0:
163+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
164+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
165+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
166+
; CHECK-NEXT: vaba.u8 q10, q9, q8
167+
; CHECK-NEXT: vmov r0, r1, d20
168+
; CHECK-NEXT: vmov r2, r3, d21
169+
; CHECK-NEXT: mov pc, lr
105170
%tmp1 = load <16 x i8>, ptr %A
106171
%tmp2 = load <16 x i8>, ptr %B
107172
%tmp3 = load <16 x i8>, ptr %C
@@ -111,8 +176,15 @@ define <16 x i8> @vabaQu8(ptr %A, ptr %B, ptr %C) nounwind {
111176
}
112177

113178
define <8 x i16> @vabaQu16(ptr %A, ptr %B, ptr %C) nounwind {
114-
;CHECK-LABEL: vabaQu16:
115-
;CHECK: vaba.u16
179+
; CHECK-LABEL: vabaQu16:
180+
; CHECK: @ %bb.0:
181+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
182+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
183+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
184+
; CHECK-NEXT: vaba.u16 q10, q9, q8
185+
; CHECK-NEXT: vmov r0, r1, d20
186+
; CHECK-NEXT: vmov r2, r3, d21
187+
; CHECK-NEXT: mov pc, lr
116188
%tmp1 = load <8 x i16>, ptr %A
117189
%tmp2 = load <8 x i16>, ptr %B
118190
%tmp3 = load <8 x i16>, ptr %C
@@ -122,8 +194,15 @@ define <8 x i16> @vabaQu16(ptr %A, ptr %B, ptr %C) nounwind {
122194
}
123195

124196
define <4 x i32> @vabaQu32(ptr %A, ptr %B, ptr %C) nounwind {
125-
;CHECK-LABEL: vabaQu32:
126-
;CHECK: vaba.u32
197+
; CHECK-LABEL: vabaQu32:
198+
; CHECK: @ %bb.0:
199+
; CHECK-NEXT: vld1.64 {d16, d17}, [r2]
200+
; CHECK-NEXT: vld1.64 {d18, d19}, [r1]
201+
; CHECK-NEXT: vld1.64 {d20, d21}, [r0]
202+
; CHECK-NEXT: vaba.u32 q10, q9, q8
203+
; CHECK-NEXT: vmov r0, r1, d20
204+
; CHECK-NEXT: vmov r2, r3, d21
205+
; CHECK-NEXT: mov pc, lr
127206
%tmp1 = load <4 x i32>, ptr %A
128207
%tmp2 = load <4 x i32>, ptr %B
129208
%tmp3 = load <4 x i32>, ptr %C
@@ -149,8 +228,15 @@ declare <8 x i16> @llvm.arm.neon.vabdu.v8i16(<8 x i16>, <8 x i16>) nounwind read
149228
declare <4 x i32> @llvm.arm.neon.vabdu.v4i32(<4 x i32>, <4 x i32>) nounwind readnone
150229

151230
define <8 x i16> @vabals8(ptr %A, ptr %B, ptr %C) nounwind {
152-
;CHECK-LABEL: vabals8:
153-
;CHECK: vabal.s8
231+
; CHECK-LABEL: vabals8:
232+
; CHECK: @ %bb.0:
233+
; CHECK-NEXT: vldr d16, [r2]
234+
; CHECK-NEXT: vldr d17, [r1]
235+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
236+
; CHECK-NEXT: vabal.s8 q9, d17, d16
237+
; CHECK-NEXT: vmov r0, r1, d18
238+
; CHECK-NEXT: vmov r2, r3, d19
239+
; CHECK-NEXT: mov pc, lr
154240
%tmp1 = load <8 x i16>, ptr %A
155241
%tmp2 = load <8 x i8>, ptr %B
156242
%tmp3 = load <8 x i8>, ptr %C
@@ -161,8 +247,15 @@ define <8 x i16> @vabals8(ptr %A, ptr %B, ptr %C) nounwind {
161247
}
162248

163249
define <4 x i32> @vabals16(ptr %A, ptr %B, ptr %C) nounwind {
164-
;CHECK-LABEL: vabals16:
165-
;CHECK: vabal.s16
250+
; CHECK-LABEL: vabals16:
251+
; CHECK: @ %bb.0:
252+
; CHECK-NEXT: vldr d16, [r2]
253+
; CHECK-NEXT: vldr d17, [r1]
254+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
255+
; CHECK-NEXT: vabal.s16 q9, d17, d16
256+
; CHECK-NEXT: vmov r0, r1, d18
257+
; CHECK-NEXT: vmov r2, r3, d19
258+
; CHECK-NEXT: mov pc, lr
166259
%tmp1 = load <4 x i32>, ptr %A
167260
%tmp2 = load <4 x i16>, ptr %B
168261
%tmp3 = load <4 x i16>, ptr %C
@@ -173,8 +266,15 @@ define <4 x i32> @vabals16(ptr %A, ptr %B, ptr %C) nounwind {
173266
}
174267

175268
define <2 x i64> @vabals32(ptr %A, ptr %B, ptr %C) nounwind {
176-
;CHECK-LABEL: vabals32:
177-
;CHECK: vabal.s32
269+
; CHECK-LABEL: vabals32:
270+
; CHECK: @ %bb.0:
271+
; CHECK-NEXT: vldr d16, [r2]
272+
; CHECK-NEXT: vldr d17, [r1]
273+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
274+
; CHECK-NEXT: vabal.s32 q9, d17, d16
275+
; CHECK-NEXT: vmov r0, r1, d18
276+
; CHECK-NEXT: vmov r2, r3, d19
277+
; CHECK-NEXT: mov pc, lr
178278
%tmp1 = load <2 x i64>, ptr %A
179279
%tmp2 = load <2 x i32>, ptr %B
180280
%tmp3 = load <2 x i32>, ptr %C
@@ -185,8 +285,15 @@ define <2 x i64> @vabals32(ptr %A, ptr %B, ptr %C) nounwind {
185285
}
186286

187287
define <8 x i16> @vabalu8(ptr %A, ptr %B, ptr %C) nounwind {
188-
;CHECK-LABEL: vabalu8:
189-
;CHECK: vabal.u8
288+
; CHECK-LABEL: vabalu8:
289+
; CHECK: @ %bb.0:
290+
; CHECK-NEXT: vldr d16, [r2]
291+
; CHECK-NEXT: vldr d17, [r1]
292+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
293+
; CHECK-NEXT: vabal.u8 q9, d17, d16
294+
; CHECK-NEXT: vmov r0, r1, d18
295+
; CHECK-NEXT: vmov r2, r3, d19
296+
; CHECK-NEXT: mov pc, lr
190297
%tmp1 = load <8 x i16>, ptr %A
191298
%tmp2 = load <8 x i8>, ptr %B
192299
%tmp3 = load <8 x i8>, ptr %C
@@ -197,8 +304,15 @@ define <8 x i16> @vabalu8(ptr %A, ptr %B, ptr %C) nounwind {
197304
}
198305

199306
define <4 x i32> @vabalu16(ptr %A, ptr %B, ptr %C) nounwind {
200-
;CHECK-LABEL: vabalu16:
201-
;CHECK: vabal.u16
307+
; CHECK-LABEL: vabalu16:
308+
; CHECK: @ %bb.0:
309+
; CHECK-NEXT: vldr d16, [r2]
310+
; CHECK-NEXT: vldr d17, [r1]
311+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
312+
; CHECK-NEXT: vabal.u16 q9, d17, d16
313+
; CHECK-NEXT: vmov r0, r1, d18
314+
; CHECK-NEXT: vmov r2, r3, d19
315+
; CHECK-NEXT: mov pc, lr
202316
%tmp1 = load <4 x i32>, ptr %A
203317
%tmp2 = load <4 x i16>, ptr %B
204318
%tmp3 = load <4 x i16>, ptr %C
@@ -209,8 +323,15 @@ define <4 x i32> @vabalu16(ptr %A, ptr %B, ptr %C) nounwind {
209323
}
210324

211325
define <2 x i64> @vabalu32(ptr %A, ptr %B, ptr %C) nounwind {
212-
;CHECK-LABEL: vabalu32:
213-
;CHECK: vabal.u32
326+
; CHECK-LABEL: vabalu32:
327+
; CHECK: @ %bb.0:
328+
; CHECK-NEXT: vldr d16, [r2]
329+
; CHECK-NEXT: vldr d17, [r1]
330+
; CHECK-NEXT: vld1.64 {d18, d19}, [r0]
331+
; CHECK-NEXT: vabal.u32 q9, d17, d16
332+
; CHECK-NEXT: vmov r0, r1, d18
333+
; CHECK-NEXT: vmov r2, r3, d19
334+
; CHECK-NEXT: mov pc, lr
214335
%tmp1 = load <2 x i64>, ptr %A
215336
%tmp2 = load <2 x i32>, ptr %B
216337
%tmp3 = load <2 x i32>, ptr %C

0 commit comments

Comments
 (0)