All pastes #70991 Raw Edit

Untitled

public text v1 · immutable
#70991 ·published 2006-06-25 02:27 UTC
rendered paste body
#define _lrotr(x, n) ((((unsigned long)(x)) >> ((int) ((n) & 31))) | (((unsigned long)(x)) << ((int) ((-(n)) & 31))))
#define _lrotl(x, n) ((((unsigned long)(x)) << ((int) ((n) & 31))) | (((unsigned long)(x)) >> ((int) ((-(n)) & 31))))

#define ror32(x, n) _lrotr (x, n)
#define rol32(x, n) _lrotl (x, n)
#define bswap32(x) (rol32 ((unsigned long)(x), 8) & 0x00ff00ff | ror32 ((unsigned long)(x), 8) & 0xff00ff00)

static __forceinline unsigned char ror8 (const unsigned char x, const int n) {
 return (x >> (n & 7)) | (x << ((-n) & 7));
}

static __forceinline unsigned __int64 rol64 (const unsigned __int64 x, const int n) {
 return (x << (n & 63)) | (x >> ((-n) & 63));
}

static __forceinline unsigned __int64 bswap64 (const unsigned __int64 x) {
 unsigned long a = (unsigned long) x, b = (unsigned long) (x >> 32);
 return (((unsigned __int64) bswap32 (a)) << 32) | bswap32(b);
}