Fixed undefined behavior in ROR/ROL

release-v0.5.0
SChernykh 5 years ago committed by wowario
parent 3b97d399b1
commit 4cec4db7f0
No known key found for this signature in database
GPG Key ID: 24DCBE762DE9C111

@ -106,13 +106,13 @@ static FORCEINLINE void v4_random_math(const struct V4_Instruction* code, v4_reg
case ROR: \
{ \
const uint32_t shift = src % REG_BITS; \
*dst = (*dst >> shift) | (*dst << (REG_BITS - shift)); \
*dst = (*dst >> shift) | (*dst << ((REG_BITS - shift) % REG_BITS)); \
} \
break; \
case ROL: \
{ \
const uint32_t shift = src % REG_BITS; \
*dst = (*dst << shift) | (*dst >> (REG_BITS - shift)); \
*dst = (*dst << shift) | (*dst >> ((REG_BITS - shift) % REG_BITS)); \
} \
break; \
case XOR: \

Loading…
Cancel
Save