@@ -115,7 +115,7 @@ validate TRUE, FALSE, TRUE, FALSE, TRUE, FALSE, TRUE, FALSE, TRUE, FALSE, TRUE,
115115aarch64 = cmeq
116116generate uint64x * _t , int64x1_t :uint64x1_t , int64x2_t :uint64x2_t , poly64x1_t :uint64x1_t , poly64x2_t :uint64x2_t
117117
118- arm = cmeq
118+ arm = vceq .
119119generate uint * _t , int8x8_t :uint8x8_t , int8x16_t :uint8x16_t , int16x4_t :uint16x4_t , int16x8_t :uint16x8_t , int32x2_t :uint32x2_t , int32x4_t :uint32x4_t
120120
121121// / Floating - point compare equal
@@ -128,7 +128,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE
128128aarch64 = fcmeq
129129generate float64x1_t :uint64x1_t , float64x2_t :uint64x2_t
130130
131- arm = fcmeq
131+ arm = vceq .
132132// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
133133generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
134134
@@ -145,7 +145,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
145145aarch64 = cmgt
146146generate int64x1_t :uint64x1_t , int64x2_t :uint64x2_t
147147
148- arm = cmgt
148+ arm = vcgt .
149149generate int8x8_t :uint8x8_t , int8x16_t :uint8x16_t , int16x4_t :uint16x4_t , int16x8_t :uint16x8_t , int32x2_t :uint32x2_t , int32x4_t :uint32x4_t
150150
151151// / Compare unsigned highe
@@ -158,7 +158,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
158158aarch64 = cmhi
159159generate uint64x * _t
160160
161- arm = cmhi
161+ arm = vcgt .
162162generate uint * _t
163163
164164// / Floating - point compare greater than
@@ -171,7 +171,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE
171171aarch64 = fcmgt
172172generate float64x1_t :uint64x1_t , float64x2_t :uint64x2_t
173173
174- arm = fcmgt
174+ arm = vcgt .
175175// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
176176generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
177177
@@ -188,7 +188,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
188188aarch64 = cmgt
189189generate int64x1_t :uint64x1_t , int64x2_t :uint64x2_t
190190
191- arm = cmgt
191+ arm = vcgt .
192192generate int8x8_t :uint8x8_t , int8x16_t :uint8x16_t , int16x4_t :uint16x4_t , int16x8_t :uint16x8_t , int32x2_t :uint32x2_t , int32x4_t :uint32x4_t
193193
194194// / Compare unsigned less than
@@ -201,7 +201,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
201201aarch64 = cmhi
202202generate uint64x * _t
203203
204- arm = cmhi
204+ arm = vcgt .
205205generate uint * _t
206206
207207// / Floating - point compare less than
@@ -214,7 +214,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE
214214aarch64 = fcmgt
215215generate float64x1_t :uint64x1_t , float64x2_t :uint64x2_t
216216
217- arm = fcmgt
217+ arm = vcgt .
218218// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
219219generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
220220
@@ -232,7 +232,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
232232aarch64 = cmge
233233generate int64x1_t :uint64x1_t , int64x2_t :uint64x2_t
234234
235- arm = cmge
235+ arm = vcge .
236236generate int8x8_t :uint8x8_t , int8x16_t :uint8x16_t , int16x4_t :uint16x4_t , int16x8_t :uint16x8_t , int32x2_t :uint32x2_t , int32x4_t :uint32x4_t
237237
238238// / Compare unsigned less than or equal
@@ -245,7 +245,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
245245aarch64 = cmhs
246246generate uint64x * _t
247247
248- arm = cmhs
248+ arm = vcge .
249249generate uint * _t
250250
251251// / Floating - point compare less than or equal
@@ -258,7 +258,7 @@ aarch64 = fcmge
258258generate float64x1_t :uint64x1_t , float64x2_t :uint64x2_t
259259
260260// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
261- arm = fcmge
261+ arm = vcge .
262262generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
263263
264264// // // // // // // // // //
@@ -275,7 +275,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
275275aarch64 = cmge
276276generate int64x1_t :uint64x1_t , int64x2_t :uint64x2_t
277277
278- arm = cmge
278+ arm = vcge .
279279generate int8x8_t :uint8x8_t , int8x16_t :uint8x16_t , int16x4_t :uint16x4_t , int16x8_t :uint16x8_t , int32x2_t :uint32x2_t , int32x4_t :uint32x4_t
280280
281281// / Compare unsigned greater than or equal
@@ -288,7 +288,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE,
288288aarch64 = cmhs
289289generate uint64x * _t
290290
291- arm = cmhs
291+ arm = vcge .
292292generate uint * _t
293293
294294// / Floating - point compare greater than or equal
@@ -301,7 +301,7 @@ validate TRUE, TRUE, TRUE, TRUE, TRUE, TRUE
301301aarch64 = fcmge
302302generate float64x1_t :uint64x1_t , float64x2_t :uint64x2_t
303303
304- arm = fcmge
304+ arm = vcge .
305305// we are missing float16x4_t :uint16x4_t , float16x8_t :uint16x8_t
306306generate float32x2_t :uint32x2_t , float32x4_t :uint32x4_t
307307
@@ -316,7 +316,7 @@ link-arm = vqsubu._EXT_
316316link - aarch64 = uqsub ._EXT_
317317generate uint * _t
318318
319- arm = sqsub
319+ arm = vqsub .
320320link - arm = vqsubs ._EXT_
321321link - aarch64 = sqsub ._EXT_
322322generate int * _t
@@ -332,7 +332,7 @@ link-arm = vhaddu._EXT_
332332link - aarch64 = uhadd ._EXT_
333333generate uint * _t
334334
335- arm = shadd
335+ arm = vhadd .
336336link - arm = vhadds ._EXT_
337337link - aarch64 = shadd ._EXT_
338338generate int * _t
@@ -348,7 +348,7 @@ link-arm = vrhaddu._EXT_
348348link - aarch64 = urhadd ._EXT_
349349generate uint * _t
350350
351- arm = srhadd
351+ arm = vrhadd .
352352link - arm = vrhadds ._EXT_
353353link - aarch64 = srhadd ._EXT_
354354generate int * _t
@@ -364,7 +364,7 @@ link-arm = vqaddu._EXT_
364364link - aarch64 = uqadd ._EXT_
365365generate uint * _t
366366
367- arm = sqadd
367+ arm = vqadd .
368368link - arm = vqadds ._EXT_
369369link - aarch64 = sqadd ._EXT_
370370generate int * _t
@@ -393,7 +393,7 @@ name = vmul
393393a = 1 , 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1 , 2 , 1 , 2
394394b = 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16
395395validate 1 , 4 , 3 , 8 , 5 , 12 , 7 , 16 , 9 , 20 , 11 , 24 , 13 , 28 , 15 , 32
396- arm = mul
396+ arm = vmul .
397397fn = simd_mul
398398generate int * _t , uint * _t
399399
@@ -407,7 +407,7 @@ validate 2.0, 6.0, 4.0, 10.0
407407aarch64 = fmul
408408generate float64x * _t
409409
410- arm = fmul
410+ arm = vmul .
411411generate float * _t
412412
413413
@@ -430,7 +430,7 @@ validate 0.0, 2.0, 0.0, 4.0
430430aarch64 = fsub
431431generate float64x * _t
432432
433- arm = fsub
433+ arm = vsub .
434434generate float * _t
435435
436436
@@ -445,7 +445,7 @@ link-arm = vhsubu._EXT_
445445link - aarch64 = uhsub ._EXT_
446446generate uint * _t
447447
448- arm = shsub
448+ arm = vhsub .
449449link - arm = vhsubs ._EXT_
450450link - aarch64 = shsub ._EXT_
451451generate int * _t
0 commit comments