src/sylvan_table.c
static uint64_t __attribute__((unused))
xor64(void)
{
    // For the initial state of s, we select two numbers:
    // - the initializer of Marsaglia's original xorshift
    // - the FNV-1a 64-bit offset basis
    static uint64_t s[2] = {88172645463325252LLU, 14695981039346656037LLU};

    uint64_t s1 = s[0];
    const uint64_t s0 = s[1];
    const uint64_t result = s0 + s1;
    s[0] = s0;
    s1 ^= s1 << 23; // a
    s[1] = s1 ^ s0 ^ (s1 >> 18) ^ (s0 >> 5); // b, c
    return result;
}
/**
 * Pseudo-RNG for initializing the hashtab tables.
 * Implementation of xorshift128+ by Vigna 2016, which is
 * based on "Xorshift RNGs", Marsaglia 2003
 */
Pseudo-RNG for initializing the hashtab tables.
Implementation of xorshift128+ by Vigna 2016, which is
based on "Xorshift RNGs", Marsaglia 2003
Pseudo - RNG for initializing the hashtab tables . Implementation of xorshift128 + by Vigna 2016 which is based on " Xorshift RNGs " Marsaglia 2003
static uint64_t __attribute__((unused))
xor64(void)
{
    static uint64_t s[2] = {88172645463325252LLU, 14695981039346656037LLU};
    uint64_t s1 = s[0];
    const uint64_t s0 = s[1];
    const uint64_t result = s0 + s1;
    s[0] = s0;
    s1 ^= s1 << 23; 
    s[1] = s1 ^ s0 ^ (s1 >> 18) ^ (s0 >> 5); 
    return result;
}
static uint64_t __attribute__ ( ( unused ) ) xor64 ( void ) { static uint64_t s [ 2 ] = { 88172645463325252LLU , 14695981039346656037LLU } ; uint64_t s1 = s [ 0 ] ; const uint64_t s0 = s [ 1 ] ; const uint64_t result = s0 + s1 ; s [ 0 ] = s0 ; s1 ^= s1 << 23 ; s [ 1 ] = s1 ^ s0 ^ ( s1 >> 18 ) ^ ( s0 >> 5 ) ; return result ; }
Pseudo-RNG for initializing the hashtab tables.
Pseudo - RNG for initializing the hashtab tables .
// For the initial state of s, we select two numbers: // - the initializer of Marsaglia's original xorshift // - the FNV-1a 64-bit offset basis // a // b, c