![]() |
FD.io VPP
v20.05-21-gb1500e9ff
Vector Packet Processing
|
Go to the source code of this file.
Macros | |
#define | foreach_avx512_vec512i _(i,8,64,epi8) _(i,16,32,epi16) _(i,32,16,epi32) _(i,64,8,epi64) |
#define | foreach_avx512_vec512u _(u,8,64,epi8) _(u,16,32,epi16) _(u,32,16,epi32) _(u,64,8,epi64) |
#define | foreach_avx512_vec512f _(f,32,8,ps) _(f,64,4,pd) |
#define | u32x16_ternary_logic(a, b, c, d) (u32x16) _mm512_ternarylogic_epi32 ((__m512i) a, (__m512i) b, (__m512i) c, d) |
#define | u8x64_insert_u8x16(a, b, n) (u8x64) _mm512_inserti64x2 ((__m512i) (a), (__m128i) (b), n) |
#define | u8x64_extract_u8x16(a, n) (u8x16) _mm512_extracti64x2_epi64 ((__m512i) (a), n) |
#define | u8x64_word_shift_left(a, n) (u8x64) _mm512_bslli_epi128((__m512i) a, n) |
#define | u8x64_word_shift_right(a, n) (u8x64) _mm512_bsrli_epi128((__m512i) a, n) |
#define foreach_avx512_vec512f _(f,32,8,ps) _(f,64,4,pd) |
Definition at line 27 of file vector_avx512.h.
Definition at line 23 of file vector_avx512.h.
#define foreach_avx512_vec512u _(u,8,64,epi8) _(u,16,32,epi16) _(u,32,16,epi32) _(u,64,8,epi64) |
Definition at line 25 of file vector_avx512.h.
#define u32x16_ternary_logic | ( | a, | |
b, | |||
c, | |||
d | |||
) | (u32x16) _mm512_ternarylogic_epi32 ((__m512i) a, (__m512i) b, (__m512i) c, d) |
Definition at line 163 of file vector_avx512.h.
Definition at line 169 of file vector_avx512.h.
Definition at line 166 of file vector_avx512.h.
Definition at line 172 of file vector_avx512.h.
Definition at line 173 of file vector_avx512.h.
static_always_inline u16x32 u16x32_byte_swap | ( | u16x32 | v | ) |
Definition at line 101 of file vector_avx512.h.
foreach_avx512_vec512i foreach_avx512_vec512u static_always_inline u32 u16x32_msb_mask | ( | u16x32 | v | ) |
static_always_inline u32x16 u32x16_byte_swap | ( | u32x16 | v | ) |
Definition at line 89 of file vector_avx512.h.
static_always_inline u32x8 u32x16_extract_hi | ( | u32x16 | v | ) |
static_always_inline u32x8 u32x16_extract_lo | ( | u32x16 | v | ) |
static_always_inline u32x16 u32x16_insert_hi | ( | u32x16 | r, |
u32x8 | v | ||
) |
Definition at line 150 of file vector_avx512.h.
static_always_inline u32x16 u32x16_insert_lo | ( | u32x16 | r, |
u32x8 | v | ||
) |
Definition at line 144 of file vector_avx512.h.
static_always_inline u32x16 u32x16_mask_blend | ( | u32x16 | a, |
u32x16 | b, | ||
u16 | mask | ||
) |
static_always_inline u32 u32x16_min_scalar | ( | u32x16 | v | ) |
static_always_inline u32x16 u32x16_splat_u32x4 | ( | u32x4 | a | ) |
static_always_inline void u32x16_transpose | ( | u32x16 | m[16] | ) |
Definition at line 231 of file vector_avx512.h.
static_always_inline u64x8 u64x8_permute | ( | u64x8 | a, |
u64x8 | b, | ||
u64x8 | mask | ||
) |
Definition at line 156 of file vector_avx512.h.
static_always_inline void u64x8_transpose | ( | u64x8 | m[8] | ) |
Definition at line 316 of file vector_avx512.h.
static_always_inline u8x32 u8x64_extract_hi | ( | u8x64 | v | ) |
static_always_inline u8x32 u8x64_extract_lo | ( | u8x64 | v | ) |
static_always_inline u8x64 u8x64_mask_blend | ( | u8x64 | a, |
u8x64 | b, | ||
u64 | mask | ||
) |
static_always_inline u8x64 u8x64_mask_load | ( | u8x64 | a, |
void * | p, | ||
u64 | mask | ||
) |
static_always_inline void u8x64_mask_store | ( | u8x64 | a, |
void * | p, | ||
u64 | mask | ||
) |
static_always_inline u8x64 u8x64_reflect_u8x16 | ( | u8x64 | x | ) |
static_always_inline u8x64 u8x64_splat_u8x16 | ( | u8x16 | a | ) |
static_always_inline u8x64 u8x64_xor3 | ( | u8x64 | a, |
u8x64 | b, | ||
u8x64 | c | ||
) |