author | Szabolcs Nagy <nsz@port70.net> | 2013年06月08日 13:31:10 +0000 |
---|---|---|
committer | Szabolcs Nagy <nsz@port70.net> | 2013年06月08日 13:31:10 +0000 |
commit | c79cd27e9e81eb5e223728094f1233ee2fc12dda (patch) | |
tree | c210ea1472b25519a62fd33e04e5809a16e76cbc /src | |
parent | fd1d7be35f1b7f083071e246208498aa3b5ced3e (diff) | |
download | musl-c79cd27e9e81eb5e223728094f1233ee2fc12dda.tar.gz |
-rw-r--r-- | src/prng/rand.c | 6 |
diff --git a/src/prng/rand.c b/src/prng/rand.c index e3ce6347..c000cd24 100644 --- a/src/prng/rand.c +++ b/src/prng/rand.c @@ -1,6 +1,7 @@ #include <stdlib.h> +#include <stdint.h> -static unsigned seed; +static uint64_t seed; void srand(unsigned s) { @@ -9,5 +10,6 @@ void srand(unsigned s) int rand(void) { - return (seed = (seed+1) * 1103515245 + 12345 - 1)+1 & 0x7fffffff; + seed = 6364136223846793005ULL*seed + 1; + return seed>>33; } |