Blame view
lib/rand.c
497 Bytes
83d290c56 SPDX: Convert all... |
1 |
// SPDX-License-Identifier: GPL-2.0+ |
9acf1ca50 lib: add rand() f... |
2 3 4 5 6 7 |
/* * Simple xorshift PRNG * see http://www.jstatsoft.org/v08/i14/paper * * Copyright (c) 2012 Michael Walle * Michael Walle <michael@walle.cc> |
9acf1ca50 lib: add rand() f... |
8 9 10 |
*/ #include <common.h> |
840ef4d43 common: Move rand... |
11 |
#include <rand.h> |
9acf1ca50 lib: add rand() f... |
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
static unsigned int y = 1U; unsigned int rand_r(unsigned int *seedp) { *seedp ^= (*seedp << 13); *seedp ^= (*seedp >> 17); *seedp ^= (*seedp << 5); return *seedp; } unsigned int rand(void) { return rand_r(&y); } void srand(unsigned int seed) { y = seed; } |