FD.io VPP
v20.01-48-g3e0dafb74
Vector Packet Processing
|
Go to the source code of this file.
Macros | |
#define | u16x8_sub_saturate(a, b) vsubq_u16(a,b) |
#define | i16x8_sub_saturate(a, b) vsubq_s16(a,b) |
#define | vreinterpretq_u8_u8(a) a |
#define | vminvq_u64(x) |
#define | foreach_neon_vec128i _(i,8,16,s8) _(i,16,8,s16) _(i,32,4,s32) _(i,64,2,s64) |
#define | foreach_neon_vec128u _(u,8,16,u8) _(u,16,8,u16) _(u,32,4,u32) _(u,64,2,u64) |
#define | foreach_neon_vec128f _(f,32,4,f32) _(f,64,2,f64) |
#define | CLIB_HAVE_VEC128_MSB_MASK |
#define | CLIB_HAVE_VEC128_UNALIGNED_LOAD_STORE |
#define | CLIB_VEC128_SPLAT_DEFINED |
Functions | |
static u32 | u8x16_compare_byte_mask (u8x16 v) |
foreach_neon_vec128i foreach_neon_vec128u static_always_inline u16x8 | u16x8_byte_swap (u16x8 v) |
static_always_inline u8x16 | u8x16_shuffle (u8x16 v, u8x16 m) |
static_always_inline u32x4 | u32x4_hadd (u32x4 v1, u32x4 v2) |
static_always_inline u64x2 | u32x4_extend_to_u64x2 (u32x4 v) |
static_always_inline u64x2 | u32x4_extend_to_u64x2_high (u32x4 v) |
static_always_inline u16 | u8x16_msb_mask (u8x16 v) |
static_always_inline u64x2 | u64x2_gather (void *p0, void *p1) |
static_always_inline u32x4 | u32x4_gather (void *p0, void *p1, void *p2, void *p3) |
static_always_inline void | u64x2_scatter (u64x2 r, void *p0, void *p1) |
static_always_inline void | u32x4_scatter (u32x4 r, void *p0, void *p1, void *p2, void *p3) |
#define CLIB_HAVE_VEC128_MSB_MASK |
Definition at line 179 of file vector_neon.h.
#define CLIB_HAVE_VEC128_UNALIGNED_LOAD_STORE |
Definition at line 181 of file vector_neon.h.
#define CLIB_VEC128_SPLAT_DEFINED |
Definition at line 182 of file vector_neon.h.
Definition at line 54 of file vector_neon.h.
Definition at line 50 of file vector_neon.h.
Definition at line 52 of file vector_neon.h.
Definition at line 22 of file vector_neon.h.
Definition at line 21 of file vector_neon.h.
#define vminvq_u64 | ( | x | ) |
Definition at line 26 of file vector_neon.h.
Definition at line 24 of file vector_neon.h.
foreach_neon_vec128i foreach_neon_vec128u static_always_inline u16x8 u16x8_byte_swap | ( | u16x8 | v | ) |
Definition at line 101 of file vector_neon.h.
static_always_inline u64x2 u32x4_extend_to_u64x2 | ( | u32x4 | v | ) |
static_always_inline u64x2 u32x4_extend_to_u64x2_high | ( | u32x4 | v | ) |
static_always_inline u32x4 u32x4_gather | ( | void * | p0, |
void * | p1, | ||
void * | p2, | ||
void * | p3 | ||
) |
Definition at line 154 of file vector_neon.h.
static_always_inline u32x4 u32x4_hadd | ( | u32x4 | v1, |
u32x4 | v2 | ||
) |
Definition at line 113 of file vector_neon.h.
static_always_inline void u32x4_scatter | ( | u32x4 | r, |
void * | p0, | ||
void * | p1, | ||
void * | p2, | ||
void * | p3 | ||
) |
Definition at line 171 of file vector_neon.h.
static_always_inline u64x2 u64x2_gather | ( | void * | p0, |
void * | p1 | ||
) |
Definition at line 146 of file vector_neon.h.
static_always_inline void u64x2_scatter | ( | u64x2 | r, |
void * | p0, | ||
void * | p1 | ||
) |
Definition at line 164 of file vector_neon.h.
|
inlinestatic |
Definition at line 35 of file vector_neon.h.
static_always_inline u16 u8x16_msb_mask | ( | u8x16 | v | ) |
static_always_inline u8x16 u8x16_shuffle | ( | u8x16 | v, |
u8x16 | m | ||
) |