[PATCH v6 6/9] eal/arm: fix C++ build for 32-bit memcpy

David Marchand david.marchand at redhat.com
Tue Sep 30 08:57:36 CEST 2025


This was caught while checking ARM arch headers.

In file included from buildtools/chkincs/chkincs-cpp.p/rte_memcpy_32.cpp:1:
/home/runner/work/dpdk/dpdk/lib/eal/arm/include/rte_memcpy_32.h:302:1:
	error: expected declaration before ‘}’ token
  302 | }
      | ^

Fixes: 719834a6849e ("use C linkage where appropriate in headers")
Cc: stable at dpdk.org

Signed-off-by: David Marchand <david.marchand at redhat.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
Acked-by: Morten Brørup <mb at smartsharesystems.com>
Acked-by: Mattias Rönnblom <mattias.ronnblom at ericsson.com>
---
 lib/eal/arm/include/rte_memcpy_32.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/lib/eal/arm/include/rte_memcpy_32.h b/lib/eal/arm/include/rte_memcpy_32.h
index 99fd5757ca..861be06f5e 100644
--- a/lib/eal/arm/include/rte_memcpy_32.h
+++ b/lib/eal/arm/include/rte_memcpy_32.h
@@ -19,10 +19,14 @@
 /* ARM NEON Intrinsics are used to copy data */
 #include <arm_neon.h>
 
+#endif /* RTE_ARCH_ARM_NEON_MEMCPY */
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+#ifdef RTE_ARCH_ARM_NEON_MEMCPY
+
 static inline void
 rte_mov16(uint8_t *dst, const uint8_t *src)
 {
@@ -252,7 +256,7 @@ rte_memcpy_func(void *dst, const void *src, size_t n)
 	return ret;
 }
 
-#else
+#else /* ! RTE_ARCH_ARM_NEON_MEMCPY */
 
 static inline void
 rte_mov16(uint8_t *dst, const uint8_t *src)
-- 
2.51.0



More information about the dev mailing list