eal/arm64: fix instrinsic for GCC < 4.9
authorYongseok Koh <yskoh@mellanox.com>
Wed, 31 Jan 2018 00:07:08 +0000 (16:07 -0800)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 31 Jan 2018 11:19:24 +0000 (12:19 +0100)
vceqzq_u32() is being used by mlx5 PMD but added since gcc 4.9.

Fixes: 570acdb1da8a ("net/mlx5: add vectorized Rx/Tx burst for ARM")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
lib/librte_eal/common/include/arch/arm/rte_vect.h

index 5cc3419..2a18a68 100644 (file)
@@ -78,6 +78,12 @@ vcopyq_laneq_u32(uint32x4_t a, const int lane_a,
 typedef uint64_t poly64_t;
 typedef uint64x2_t poly64x2_t;
 typedef uint8_t poly128_t __attribute__((vector_size(16), aligned(16)));
+
+static inline uint32x4_t
+vceqzq_u32(uint32x4_t a)
+{
+       return (a == 0);
+}
 #endif
 
 /* NEON intrinsic vreinterpretq_u64_p128() is supported since GCC version 7 */