--- include/aircrack-ng/ce-wpa/pseudo_intrinsics.h.old +++ include/aircrack-ng/ce-wpa/pseudo_intrinsics.h @@ -162,8 +162,10 @@ #define vloadu vloadu_emu #define VLOADU_EMULATED 1 #define vor(x, y) (vtype) vec_or((x).v32, (y).v32) -#define vroti_epi32(x, i) (vtype) vec_rl((x).v32, (vset1_epi32(i)).v32) -#define vroti_epi64(x, i) (vtype) vec_rl((x).v64, (vset1_epi64(i)).v64) +#define (i > 0 ? (vtype)vsliq_n_u32(vshrq_n_u32((x).v32, 32 - ((i) & 31)), (x).v32, (i) & 31) : \ + (vtype)vsriq_n_u32(vshlq_n_u32((x).v32, (32 + (i)) & 31), (x).v32, (-(i)) & 31)) +#define (i > 0 ? (vtype)vsliq_n_u64(vshrq_n_u64((x).v64, 64 - ((i) & 63)), (x).v64, (i) & 63) : \ + (vtype)vsriq_n_u64(vshlq_n_u64((x).v64, (64 + (i)) & 63), (x).v64, (-(i)) & 63)) #define vroti16_epi32 vroti_epi32 #define vset1_epi32(x) vset_epi32(x, x, x, x) #define vset1_epi64(x) vset_epi64(x, x)