diff options
author | Christophe Fontaine <christophe.fontaine@qosmos.com> | 2016-12-19 14:41:52 +0100 |
---|---|---|
committer | Christophe Fontaine <christophe.fontaine@qosmos.com> | 2016-12-21 15:16:44 +0100 |
commit | 33e81950cf937ab081c7c591f06e8871b0f00e93 (patch) | |
tree | 6589eb085e89c2631b9dc7dcc3126a66c368f604 /vppinfra/vppinfra/vector.h | |
parent | 7e9e6e1f1c1b9f41547899aeff5a05a5a7421103 (diff) |
aarch64 compatibility
- lb plugin: compatibility for non x86 platforms.
- Add vector_neon.h to support simd instructions, especially
'u16x8_zero_byte_mask' used in
"vnet/vnet/ip/ip4_source_and_port_range_check.c"
Change-Id: I395546b0e2d5748e73daffa51269a200ef8d1235
Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
Diffstat (limited to 'vppinfra/vppinfra/vector.h')
-rw-r--r-- | vppinfra/vppinfra/vector.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/vppinfra/vppinfra/vector.h b/vppinfra/vppinfra/vector.h index 58fc808abcc..491e7cfe547 100644 --- a/vppinfra/vppinfra/vector.h +++ b/vppinfra/vppinfra/vector.h @@ -42,7 +42,7 @@ /* Vector types. */ -#if defined (__MMX__) || defined (__IWMMXT__) +#if defined (__MMX__) || defined (__IWMMXT__) || defined (__aarch64__) #define CLIB_HAVE_VEC64 #endif @@ -63,6 +63,10 @@ #if defined (__aarch64__) || defined (__arm__) typedef unsigned int u32x4 _vector_size (16); +typedef u8 u8x16 _vector_size (16); +typedef u16 u16x8 _vector_size (16); +typedef u32 u32x4 _vector_size (16); +typedef u64 u64x2 _vector_size (16); #endif #ifdef CLIB_HAVE_VEC64 @@ -245,6 +249,10 @@ _(i64, 2); #include <vppinfra/vector_iwmmxt.h> #endif +#if defined (__aarch64__) +#include <vppinfra/vector_neon.h> +#endif + #if (defined(CLIB_HAVE_VEC128) || defined(CLIB_HAVE_VEC64)) #include <vppinfra/vector_funcs.h> #endif |