source/splitmix64.h
// returns random number, modifies splitmix64_x
// compared with D. Lemire against
// http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8-b132/java/util/SplittableRandom.java#SplittableRandom.0gamma
returns random number, modifies splitmix64_x
compared with D.
returns random number modifies splitmix64_x compared with D .
static inline uint64_t splitmix64(void) {
  uint64_t z = (splitmix64_x += UINT64_C(0x9E3779B97F4A7C15));
  z = (z ^ (z >> 30)) * UINT64_C(0xBF58476D1CE4E5B9);
  z = (z ^ (z >> 27)) * UINT64_C(0x94D049BB133111EB);
  return z ^ (z >> 31);
}
static inline uint64_t splitmix64 ( void ) { uint64_t z = ( splitmix64_x += UINT64_C ( 0x9E3779B97F4A7C15 ) ) ; z = ( z ^ ( z >> 30 ) ) * UINT64_C ( 0xBF58476D1CE4E5B9 ) ; z = ( z ^ ( z >> 27 ) ) * UINT64_C ( 0x94D049BB133111EB ) ; return z ^ ( z >> 31 ) ; }
returns random number, modifies splitmix64_x
compared with D. Lemire against
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8-b132/java/util/SplittableRandom.java#SplittableRandom.0gamma
returns random number modifies splitmix64_x compared with D . Lemire against http : // grepcode . com / file / repository . grepcode . com / java / root / jdk / openjdk / 8 - b132 / java / util / SplittableRandom . java#SplittableRandom . 0gamma