| 1 | /*- |
| 2 | * This file is in the public domain. |
| 3 | */ |
| 4 | |
| 5 | #ifndef	_SYS_PRNG_H_ |
| 6 | #define	_SYS_PRNG_H_ |
| 7 | |
| 8 | #define	PCG_USE_INLINE_ASM	1 |
| 9 | #include <contrib/pcg-c/include/pcg_variants.h> |
| 10 | |
| 11 | #ifdef	_KERNEL |
| 12 | __uint32_t prng32(void); |
| 13 | __uint32_t prng32_bounded(__uint32_t bound); |
| 14 | __uint64_t prng64(void); |
| 15 | __uint64_t prng64_bounded(__uint64_t bound); |
| 16 | #endif |
| 17 | |
| 18 | #endif |