@@ -287,13 +287,35 @@ arm = fcmge
287
287
// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
288
288
generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
289
289
290
- // / Unsigned saturating subtract
290
+ // / Saturating subtract
291
291
name = vqsub
292
292
a = 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42 , 42
293
293
b = 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16
294
294
e = 41 , 40 , 39 , 38 , 37 , 36 , 35 , 34 , 33 , 32 , 31 , 30 , 29 , 28 , 27 , 26
295
+
296
+ arm = uqsub
295
297
link - arm = llvm .arm .neon .vqsubu ._EXT_
296
298
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
297
321
298
- arm = uqsub
299
- generate int * _t , uint * _t
0 commit comments