...
|
...
|
@@ -382,8 +382,8 @@ static inline void cli_writeint32(char *offset, uint32_t value)
|
382
|
382
|
/* used by: spin, yc (C) aCaB */
|
383
|
383
|
#define __SHIFTBITS(a) (sizeof(a)<<3)
|
384
|
384
|
#define __SHIFTMASK(a) (__SHIFTBITS(a)-1)
|
385
|
|
-#define CLI_ROL(a,b) a = ( a << (b & __SHIFTMASK(a)) ) | ( a >> ((__SHIFTBITS(a) - b) & __SHIFTMASK(a)) )
|
386
|
|
-#define CLI_ROR(a,b) a = ( a >> (b & __SHIFTMASK(a)) ) | ( a << ((__SHIFTBITS(a) - b) & __SHIFTMASK(a)) )
|
|
385
|
+#define CLI_ROL(a,b) a = ( a << ((b) & __SHIFTMASK(a)) ) | ( a >> ((__SHIFTBITS(a) - (b)) & __SHIFTMASK(a)) )
|
|
386
|
+#define CLI_ROR(a,b) a = ( a >> ((b) & __SHIFTMASK(a)) ) | ( a << ((__SHIFTBITS(a) - (b)) & __SHIFTMASK(a)) )
|
387
|
387
|
|
388
|
388
|
/* Implementation independent sign-extended signed right shift */
|
389
|
389
|
#ifdef HAVE_SAR
|