• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/lib/libc/stdlib/

Lines Matching refs:estate

215 srandom_r(struct __random_state *estate, unsigned x)
219 estate->rst_state[0] = (uint32_t)x;
220 if (estate->rst_type == TYPE_0)
223 for (i = 1; i < estate->rst_deg; i++)
224 estate->rst_state[i] =
225 parkmiller32(estate->rst_state[i - 1]);
226 estate->rst_fptr = &estate->rst_state[estate->rst_sep];
227 estate->rst_rptr = &estate->rst_state[0];
228 lim = 10 * estate->rst_deg;
231 (void)random_r(estate);
253 srandomdev_r(struct __random_state *estate)
258 if (estate->rst_type == TYPE_0)
259 len = sizeof(estate->rst_state[0]);
261 len = estate->rst_deg * sizeof(estate->rst_state[0]);
266 if (sysctl(mib, 2, estate->rst_state, &len, NULL, 0) == -1 ||
277 if (estate->rst_type != TYPE_0) {
278 estate->rst_fptr = &estate->rst_state[estate->rst_sep];
279 estate->rst_rptr = &estate->rst_state[0];
303 initstate_r(struct __random_state *estate, unsigned seed, uint32_t *arg_state,
310 estate->rst_type = TYPE_0;
311 estate->rst_deg = DEG_0;
312 estate->rst_sep = SEP_0;
314 estate->rst_type = TYPE_1;
315 estate->rst_deg = DEG_1;
316 estate->rst_sep = SEP_1;
318 estate->rst_type = TYPE_2;
319 estate->rst_deg = DEG_2;
320 estate->rst_sep = SEP_2;
322 estate->rst_type = TYPE_3;
323 estate->rst_deg = DEG_3;
324 estate->rst_sep = SEP_3;
326 estate->rst_type = TYPE_4;
327 estate->rst_deg = DEG_4;
328 estate->rst_sep = SEP_4;
330 estate->rst_state = arg_state + 1;
331 estate->rst_end_ptr = &estate->rst_state[estate->rst_deg];
332 srandom_r(estate, seed);
456 random_r(struct __random_state *estate)
461 if (estate->rst_type == TYPE_0) {
462 i = estate->rst_state[0];
464 estate->rst_state[0] = i;
469 f = estate->rst_fptr;
470 r = estate->rst_rptr;
473 if (++f >= estate->rst_end_ptr) {
474 f = estate->rst_state;
477 else if (++r >= estate->rst_end_ptr) {
478 r = estate->rst_state;
481 estate->rst_fptr = f;
482 estate->rst_rptr = r;