Skip to content

Commit 8c8ca07

Browse files
committed
Add vqadd
1 parent 7f36329 commit 8c8ca07

File tree

2 files changed

+425
-91
lines changed

2 files changed

+425
-91
lines changed

crates/core_arch/neon.spec

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -287,13 +287,35 @@ arm = fcmge
287287
// we are missing float16x4_t:uint16x4_t, float16x8_t:uint16x8_t
288288
generate float32x2_t:uint32x2_t, float32x4_t:uint32x4_t
289289

290-
/// Unsigned saturating subtract
290+
/// Saturating subtract
291291
name = vqsub
292292
a = 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42
293293
b = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
294294
e = 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26
295+
296+
arm = uqsub
295297
link-arm = llvm.arm.neon.vqsubu._EXT_
296298
link-aarch64 = llvm.aarch64.neon.uqsub._EXT_
299+
generate uint*_t
300+
301+
arm = sqsub
302+
link-arm = llvm.arm.neon.vqsubs._EXT_
303+
link-aarch64 = llvm.aarch64.neon.sqsub._EXT_
304+
generate int*_t
305+
306+
/// Saturating add
307+
name = vqadd
308+
a = 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42
309+
b = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
310+
e = 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58
311+
312+
arm = uqadd
313+
link-arm = llvm.arm.neon.vqaddu._EXT_
314+
link-aarch64 = llvm.aarch64.neon.uqadd._EXT_
315+
generate uint*_t
316+
317+
arm = sqadd
318+
link-arm = llvm.arm.neon.vqadds._EXT_
319+
link-aarch64 = llvm.aarch64.neon.sqadd._EXT_
320+
generate int*_t
297321

298-
arm = uqsub
299-
generate int*_t, uint*_t

0 commit comments

Comments
 (0)