Out of curiosity, what's the reason for these endianness checks to be here? We've already stated that different architectures/platforms will have different random number generators, so is this for speed? Regardless, I'd like to see a comment explaining the endianness check.