[dpdk-dev] [PATCH] eal/arm64: fix instrinsic for ARM64 NEON with GCC < 4.9

Yongseok Koh yskoh at mellanox.com
Wed Jan 31 01:07:08 CET 2018


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 at dpdk.org

Signed-off-by: Yongseok Koh <yskoh at mellanox.com>
---
 lib/librte_eal/common/include/arch/arm/rte_vect.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/librte_eal/common/include/arch/arm/rte_vect.h b/lib/librte_eal/common/include/arch/arm/rte_vect.h
index 5cc34190f..2a18a6854 100644
--- a/lib/librte_eal/common/include/arch/arm/rte_vect.h
+++ b/lib/librte_eal/common/include/arch/arm/rte_vect.h
@@ -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 */
-- 
2.11.0



More information about the dev mailing list