|
|
|
|
@ -380,8 +380,10 @@ static inline void cli_writeint32(char *offset, uint32_t value) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
/* used by: spin, yc (C) aCaB */ |
|
|
|
|
#define CLI_ROL(a,b) a = ( a << (b % (sizeof(a)<<3) )) | (a >> ( (sizeof(a)<<3) - (b % (sizeof(a)<<3 )) ) ) |
|
|
|
|
#define CLI_ROR(a,b) a = ( a >> (b % (sizeof(a)<<3) )) | (a << ( (sizeof(a)<<3) - (b % (sizeof(a)<<3 )) ) ) |
|
|
|
|
#define __SHIFTBITS(a) (sizeof(a)<<3) |
|
|
|
|
#define __SHIFTMASK(a) (__SHIFTBITS(a)-1) |
|
|
|
|
#define CLI_ROL(a,b) a = ( a << (b & __SHIFTMASK(a)) ) | ( a >> ((__SHIFTBITS(a) - b) & __SHIFTMASK(a)) ) |
|
|
|
|
#define CLI_ROR(a,b) a = ( a >> (b & __SHIFTMASK(a)) ) | ( a << ((__SHIFTBITS(a) - b) & __SHIFTMASK(a)) |
|
|
|
|
|
|
|
|
|
/* Implementation independent sign-extended signed right shift */ |
|
|
|
|
#ifdef HAVE_SAR |
|
|
|
|
|