1 typedef unsigned int u32
;
2 typedef unsigned long long u64
;
4 static inline u64
rot(u64 x
, u32 n
, u32 mb
, u32 me
)
30 mask
+= 1ULL << (63 - mb
);
31 mask
+= 1ULL << (63 - mb
);
32 mask
-= 1ULL << (63 - me
);
43 u64 f_##N##_##B(u64 x) { return rot(x,N,B,63-N); }
47 u64 f_##N##_##B(u64 x) { return rot(x,N,B,63); }
51 u64 f_##N##_##E(u64 x) { return rot(x,N,0,E); }