X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fprng%2Frand.c;h=c000cd248cef667bab257940768616c9349f7d70;hp=e3ce6347331608ce663a2ac6006c6bc08e2cd800;hb=c79cd27e9e81eb5e223728094f1233ee2fc12dda;hpb=fd1d7be35f1b7f083071e246208498aa3b5ced3e 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 +#include -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; }