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