__hi
#define highest(x) __hi(__u64(x), 48)
#define higher(x) __hi(__u64(x), 32)
#define hi(x) __hi(__u32(x), 16)
vextq_u32(uint32x4_t __lo, uint32x4_t __hi, uint8_t __i)
return __builtin_shuffle(__hi, __lo,
return __builtin_shuffle(__lo, __hi,
#define vextq_u32(__lo, __hi, __i) \
(int8x16_t)(__hi), (__i), 50)
#define vextq_u32(__lo, __hi, __i) ( \
uint32x4_t __thi = (__hi); \
vextq_u8(uint8x16_t __lo, uint8x16_t __hi, uint8_t __i)
return __builtin_shuffle(__hi, __lo,
return __builtin_shuffle(__lo, __hi,
(int8x16_t)__hi, __i);
#define vextq_u8(__lo, __hi, __i) \
(int8x16_t)(__hi), (__i), 48)
#define vextq_u8(__lo, __hi, __i) ( \
uint8x16_t __thi = (__hi); \
_mm_unpackhi_epi32(__m128i __lo, __m128i __hi)
(__v4si)__hi);
return (__m128i)__builtin_shufflevector((__v4si)__lo, (__v4si)__hi,
_mm_unpacklo_epi32(__m128i __lo, __m128i __hi)
(__v4si)__hi);
return (__m128i)__builtin_shufflevector((__v4si)__lo, (__v4si)__hi,
_mm_unpacklo_epi64(__m128i __lo, __m128i __hi)
(__v2di)__hi);
return (__m128i)__builtin_shufflevector((__v2di)__lo, (__v2di)__hi,