static unsigned int RDG_rand(U32* src) { U32 rand32 = *src; rand32 *= PRIME1; rand32 ^= PRIME2; rand32 = RDG_rotl32(rand32, 13); *src = rand32; return rand32; }
static U32 RDG_rand(U32* src) { static const U32 prime1 = 2654435761U; static const U32 prime2 = 2246822519U; U32 rand32 = *src; rand32 *= prime1; rand32 ^= prime2; rand32 = RDG_rotl32(rand32, 13); *src = rand32; return rand32 >> 5; }