Lines Matching +full:int +full:- +full:threshold

4  * Copyright 2014-2019 Melissa O'Neill <oneill@pcg-random.org>,
7 * SPDX-License-Identifier: (Apache-2.0 OR MIT)
10 * LICENSE-APACHE.txt and at http://www.apache.org/licenses/LICENSE-2.0)
11 * or under the MIT license (provided in LICENSE-MIT.txt and at
19 * visit http://www.pcg-random.org/.
30 * (from https://github.com/draperlaboratory/llvm-cbe), and then
33 * Much of the remaining code was generated by C-preprocessor metaprogramming.
56 static inline uint8_t pcg_rotr_8(uint8_t value, unsigned int rot) in pcg_rotr_8()
66 return (value >> rot) | (value << ((- rot) & 7)); in pcg_rotr_8()
70 static inline uint16_t pcg_rotr_16(uint16_t value, unsigned int rot) in pcg_rotr_16()
76 return (value >> rot) | (value << ((- rot) & 15)); in pcg_rotr_16()
80 static inline uint32_t pcg_rotr_32(uint32_t value, unsigned int rot) in pcg_rotr_32()
86 return (value >> rot) | (value << ((- rot) & 31)); in pcg_rotr_32()
90 static inline uint64_t pcg_rotr_64(uint64_t value, unsigned int rot) in pcg_rotr_64()
98 return (value >> rot) | (value << ((- rot) & 63)); in pcg_rotr_64()
103 static inline pcg128_t pcg_rotr_128(pcg128_t value, unsigned int rot) in pcg_rotr_128()
105 return (value >> rot) | (value << ((- rot) & 127)); in pcg_rotr_128()
382 /* Multi-step advance functions (jump-ahead, jump-back) */
399 * each style. These functions are considered semi-private. There is rarely
405 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_8 in pcg_oneseq_8_step_r()
411 rng->state = pcg_advance_lcg_8(rng->state, delta, PCG_DEFAULT_MULTIPLIER_8, in pcg_oneseq_8_advance_r()
417 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_8; in pcg_mcg_8_step_r()
422 rng->state in pcg_mcg_8_advance_r()
423 = pcg_advance_lcg_8(rng->state, delta, PCG_DEFAULT_MULTIPLIER_8, 0u); in pcg_mcg_8_advance_r()
428 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_8 in pcg_unique_8_step_r()
434 rng->state = pcg_advance_lcg_8(rng->state, delta, PCG_DEFAULT_MULTIPLIER_8, in pcg_unique_8_advance_r()
440 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_8 + rng->inc; in pcg_setseq_8_step_r()
446 rng->state = pcg_advance_lcg_8(rng->state, delta, PCG_DEFAULT_MULTIPLIER_8, in pcg_setseq_8_advance_r()
447 rng->inc); in pcg_setseq_8_advance_r()
452 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_16 in pcg_oneseq_16_step_r()
458 rng->state = pcg_advance_lcg_16( in pcg_oneseq_16_advance_r()
459 rng->state, delta, PCG_DEFAULT_MULTIPLIER_16, PCG_DEFAULT_INCREMENT_16); in pcg_oneseq_16_advance_r()
464 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_16; in pcg_mcg_16_step_r()
469 rng->state in pcg_mcg_16_advance_r()
470 = pcg_advance_lcg_16(rng->state, delta, PCG_DEFAULT_MULTIPLIER_16, 0u); in pcg_mcg_16_advance_r()
475 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_16 in pcg_unique_16_step_r()
481 rng->state in pcg_unique_16_advance_r()
482 = pcg_advance_lcg_16(rng->state, delta, PCG_DEFAULT_MULTIPLIER_16, in pcg_unique_16_advance_r()
488 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_16 + rng->inc; in pcg_setseq_16_step_r()
494 rng->state = pcg_advance_lcg_16(rng->state, delta, in pcg_setseq_16_advance_r()
495 PCG_DEFAULT_MULTIPLIER_16, rng->inc); in pcg_setseq_16_advance_r()
500 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_32 in pcg_oneseq_32_step_r()
506 rng->state = pcg_advance_lcg_32( in pcg_oneseq_32_advance_r()
507 rng->state, delta, PCG_DEFAULT_MULTIPLIER_32, PCG_DEFAULT_INCREMENT_32); in pcg_oneseq_32_advance_r()
512 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_32; in pcg_mcg_32_step_r()
517 rng->state in pcg_mcg_32_advance_r()
518 = pcg_advance_lcg_32(rng->state, delta, PCG_DEFAULT_MULTIPLIER_32, 0u); in pcg_mcg_32_advance_r()
523 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_32 in pcg_unique_32_step_r()
529 rng->state in pcg_unique_32_advance_r()
530 = pcg_advance_lcg_32(rng->state, delta, PCG_DEFAULT_MULTIPLIER_32, in pcg_unique_32_advance_r()
536 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_32 + rng->inc; in pcg_setseq_32_step_r()
542 rng->state = pcg_advance_lcg_32(rng->state, delta, in pcg_setseq_32_advance_r()
543 PCG_DEFAULT_MULTIPLIER_32, rng->inc); in pcg_setseq_32_advance_r()
548 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_64 in pcg_oneseq_64_step_r()
554 rng->state = pcg_advance_lcg_64( in pcg_oneseq_64_advance_r()
555 rng->state, delta, PCG_DEFAULT_MULTIPLIER_64, PCG_DEFAULT_INCREMENT_64); in pcg_oneseq_64_advance_r()
560 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_64; in pcg_mcg_64_step_r()
565 rng->state in pcg_mcg_64_advance_r()
566 = pcg_advance_lcg_64(rng->state, delta, PCG_DEFAULT_MULTIPLIER_64, 0u); in pcg_mcg_64_advance_r()
571 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_64 in pcg_unique_64_step_r()
577 rng->state in pcg_unique_64_advance_r()
578 = pcg_advance_lcg_64(rng->state, delta, PCG_DEFAULT_MULTIPLIER_64, in pcg_unique_64_advance_r()
584 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_64 + rng->inc; in pcg_setseq_64_step_r()
590 rng->state = pcg_advance_lcg_64(rng->state, delta, in pcg_setseq_64_advance_r()
591 PCG_DEFAULT_MULTIPLIER_64, rng->inc); in pcg_setseq_64_advance_r()
597 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_128 in pcg_oneseq_128_step_r()
605 rng->state in pcg_oneseq_128_advance_r()
606 = pcg_advance_lcg_128(rng->state, delta, PCG_DEFAULT_MULTIPLIER_128, in pcg_oneseq_128_advance_r()
614 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_128; in pcg_mcg_128_step_r()
621 rng->state = pcg_advance_lcg_128(rng->state, delta, in pcg_mcg_128_advance_r()
629 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_128 in pcg_unique_128_step_r()
637 rng->state in pcg_unique_128_advance_r()
638 = pcg_advance_lcg_128(rng->state, delta, PCG_DEFAULT_MULTIPLIER_128, in pcg_unique_128_advance_r()
646 rng->state = rng->state * PCG_DEFAULT_MULTIPLIER_128 + rng->inc; in pcg_setseq_128_step_r()
654 rng->state = pcg_advance_lcg_128(rng->state, delta, in pcg_setseq_128_advance_r()
655 PCG_DEFAULT_MULTIPLIER_128, rng->inc); in pcg_setseq_128_advance_r()
666 rng->state = 0U; in pcg_oneseq_8_srandom_r()
668 rng->state += initstate; in pcg_oneseq_8_srandom_r()
674 rng->state = initstate | 1u; in pcg_mcg_8_srandom_r()
679 rng->state = 0U; in pcg_unique_8_srandom_r()
681 rng->state += initstate; in pcg_unique_8_srandom_r()
688 rng->state = 0U; in pcg_setseq_8_srandom_r()
689 rng->inc = (initseq << 1u) | 1u; in pcg_setseq_8_srandom_r()
691 rng->state += initstate; in pcg_setseq_8_srandom_r()
698 rng->state = 0U; in pcg_oneseq_16_srandom_r()
700 rng->state += initstate; in pcg_oneseq_16_srandom_r()
706 rng->state = initstate | 1u; in pcg_mcg_16_srandom_r()
712 rng->state = 0U; in pcg_unique_16_srandom_r()
714 rng->state += initstate; in pcg_unique_16_srandom_r()
721 rng->state = 0U; in pcg_setseq_16_srandom_r()
722 rng->inc = (initseq << 1u) | 1u; in pcg_setseq_16_srandom_r()
724 rng->state += initstate; in pcg_setseq_16_srandom_r()
731 rng->state = 0U; in pcg_oneseq_32_srandom_r()
733 rng->state += initstate; in pcg_oneseq_32_srandom_r()
739 rng->state = initstate | 1u; in pcg_mcg_32_srandom_r()
745 rng->state = 0U; in pcg_unique_32_srandom_r()
747 rng->state += initstate; in pcg_unique_32_srandom_r()
754 rng->state = 0U; in pcg_setseq_32_srandom_r()
755 rng->inc = (initseq << 1u) | 1u; in pcg_setseq_32_srandom_r()
757 rng->state += initstate; in pcg_setseq_32_srandom_r()
764 rng->state = 0U; in pcg_oneseq_64_srandom_r()
766 rng->state += initstate; in pcg_oneseq_64_srandom_r()
772 rng->state = initstate | 1u; in pcg_mcg_64_srandom_r()
778 rng->state = 0U; in pcg_unique_64_srandom_r()
780 rng->state += initstate; in pcg_unique_64_srandom_r()
787 rng->state = 0U; in pcg_setseq_64_srandom_r()
788 rng->inc = (initseq << 1u) | 1u; in pcg_setseq_64_srandom_r()
790 rng->state += initstate; in pcg_setseq_64_srandom_r()
798 rng->state = 0U; in pcg_oneseq_128_srandom_r()
800 rng->state += initstate; in pcg_oneseq_128_srandom_r()
808 rng->state = initstate | 1u; in pcg_mcg_128_srandom_r()
816 rng->state = 0U; in pcg_unique_128_srandom_r()
818 rng->state += initstate; in pcg_unique_128_srandom_r()
827 rng->state = 0U; in pcg_setseq_128_srandom_r()
828 rng->inc = (initseq << 1u) | 1u; in pcg_setseq_128_srandom_r()
830 rng->state += initstate; in pcg_setseq_128_srandom_r()
843 * bound, which we do by dropping output less than a threshold.
844 * Let's consider a 32-bit case... A naive scheme to calculate the
845 * threshold would be to do
847 * uint32_t threshold = 0x100000000ull % bound;
849 * but 64-bit div/mod is slower than 32-bit div/mod (especially on
850 * 32-bit platforms). In essence, we do
852 * uint32_t threshold = (0x100000000ull-bound) % bound;
868 uint16_t oldstate = rng->state; in pcg_oneseq_16_xsh_rs_8_random_r()
876 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_oneseq_16_xsh_rs_8_boundedrand_r() local
879 if (r >= threshold) in pcg_oneseq_16_xsh_rs_8_boundedrand_r()
886 uint32_t oldstate = rng->state; in pcg_oneseq_32_xsh_rs_16_random_r()
894 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_oneseq_32_xsh_rs_16_boundedrand_r() local
897 if (r >= threshold) in pcg_oneseq_32_xsh_rs_16_boundedrand_r()
904 uint64_t oldstate = rng->state; in pcg_oneseq_64_xsh_rs_32_random_r()
912 uint32_t threshold = -bound % bound; in pcg_oneseq_64_xsh_rs_32_boundedrand_r() local
915 if (r >= threshold) in pcg_oneseq_64_xsh_rs_32_boundedrand_r()
924 return pcg_output_xsh_rs_128_64(rng->state); in pcg_oneseq_128_xsh_rs_64_random_r()
933 uint64_t threshold = -bound % bound; in pcg_oneseq_128_xsh_rs_64_boundedrand_r() local
936 if (r >= threshold) in pcg_oneseq_128_xsh_rs_64_boundedrand_r()
944 uint16_t oldstate = rng->state; in pcg_unique_16_xsh_rs_8_random_r()
952 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_unique_16_xsh_rs_8_boundedrand_r() local
955 if (r >= threshold) in pcg_unique_16_xsh_rs_8_boundedrand_r()
962 uint32_t oldstate = rng->state; in pcg_unique_32_xsh_rs_16_random_r()
970 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_unique_32_xsh_rs_16_boundedrand_r() local
973 if (r >= threshold) in pcg_unique_32_xsh_rs_16_boundedrand_r()
980 uint64_t oldstate = rng->state; in pcg_unique_64_xsh_rs_32_random_r()
988 uint32_t threshold = -bound % bound; in pcg_unique_64_xsh_rs_32_boundedrand_r() local
991 if (r >= threshold) in pcg_unique_64_xsh_rs_32_boundedrand_r()
1000 return pcg_output_xsh_rs_128_64(rng->state); in pcg_unique_128_xsh_rs_64_random_r()
1009 uint64_t threshold = -bound % bound; in pcg_unique_128_xsh_rs_64_boundedrand_r() local
1012 if (r >= threshold) in pcg_unique_128_xsh_rs_64_boundedrand_r()
1020 uint16_t oldstate = rng->state; in pcg_setseq_16_xsh_rs_8_random_r()
1029 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_setseq_16_xsh_rs_8_boundedrand_r() local
1032 if (r >= threshold) in pcg_setseq_16_xsh_rs_8_boundedrand_r()
1040 uint32_t oldstate = rng->state; in pcg_setseq_32_xsh_rs_16_random_r()
1049 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_setseq_32_xsh_rs_16_boundedrand_r() local
1052 if (r >= threshold) in pcg_setseq_32_xsh_rs_16_boundedrand_r()
1060 uint64_t oldstate = rng->state; in pcg_setseq_64_xsh_rs_32_random_r()
1069 uint32_t threshold = -bound % bound; in pcg_setseq_64_xsh_rs_32_boundedrand_r() local
1072 if (r >= threshold) in pcg_setseq_64_xsh_rs_32_boundedrand_r()
1082 return pcg_output_xsh_rs_128_64(rng->state); in pcg_setseq_128_xsh_rs_64_random_r()
1091 uint64_t threshold = -bound % bound; in pcg_setseq_128_xsh_rs_64_boundedrand_r() local
1094 if (r >= threshold) in pcg_setseq_128_xsh_rs_64_boundedrand_r()
1102 uint16_t oldstate = rng->state; in pcg_mcg_16_xsh_rs_8_random_r()
1110 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_mcg_16_xsh_rs_8_boundedrand_r() local
1113 if (r >= threshold) in pcg_mcg_16_xsh_rs_8_boundedrand_r()
1120 uint32_t oldstate = rng->state; in pcg_mcg_32_xsh_rs_16_random_r()
1128 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_mcg_32_xsh_rs_16_boundedrand_r() local
1131 if (r >= threshold) in pcg_mcg_32_xsh_rs_16_boundedrand_r()
1138 uint64_t oldstate = rng->state; in pcg_mcg_64_xsh_rs_32_random_r()
1146 uint32_t threshold = -bound % bound; in pcg_mcg_64_xsh_rs_32_boundedrand_r() local
1149 if (r >= threshold) in pcg_mcg_64_xsh_rs_32_boundedrand_r()
1158 return pcg_output_xsh_rs_128_64(rng->state); in pcg_mcg_128_xsh_rs_64_random_r()
1166 uint64_t threshold = -bound % bound; in pcg_mcg_128_xsh_rs_64_boundedrand_r() local
1169 if (r >= threshold) in pcg_mcg_128_xsh_rs_64_boundedrand_r()
1179 uint16_t oldstate = rng->state; in pcg_oneseq_16_xsh_rr_8_random_r()
1187 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_oneseq_16_xsh_rr_8_boundedrand_r() local
1190 if (r >= threshold) in pcg_oneseq_16_xsh_rr_8_boundedrand_r()
1197 uint32_t oldstate = rng->state; in pcg_oneseq_32_xsh_rr_16_random_r()
1205 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_oneseq_32_xsh_rr_16_boundedrand_r() local
1208 if (r >= threshold) in pcg_oneseq_32_xsh_rr_16_boundedrand_r()
1215 uint64_t oldstate = rng->state; in pcg_oneseq_64_xsh_rr_32_random_r()
1223 uint32_t threshold = -bound % bound; in pcg_oneseq_64_xsh_rr_32_boundedrand_r() local
1226 if (r >= threshold) in pcg_oneseq_64_xsh_rr_32_boundedrand_r()
1235 return pcg_output_xsh_rr_128_64(rng->state); in pcg_oneseq_128_xsh_rr_64_random_r()
1244 uint64_t threshold = -bound % bound; in pcg_oneseq_128_xsh_rr_64_boundedrand_r() local
1247 if (r >= threshold) in pcg_oneseq_128_xsh_rr_64_boundedrand_r()
1255 uint16_t oldstate = rng->state; in pcg_unique_16_xsh_rr_8_random_r()
1263 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_unique_16_xsh_rr_8_boundedrand_r() local
1266 if (r >= threshold) in pcg_unique_16_xsh_rr_8_boundedrand_r()
1273 uint32_t oldstate = rng->state; in pcg_unique_32_xsh_rr_16_random_r()
1281 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_unique_32_xsh_rr_16_boundedrand_r() local
1284 if (r >= threshold) in pcg_unique_32_xsh_rr_16_boundedrand_r()
1291 uint64_t oldstate = rng->state; in pcg_unique_64_xsh_rr_32_random_r()
1299 uint32_t threshold = -bound % bound; in pcg_unique_64_xsh_rr_32_boundedrand_r() local
1302 if (r >= threshold) in pcg_unique_64_xsh_rr_32_boundedrand_r()
1311 return pcg_output_xsh_rr_128_64(rng->state); in pcg_unique_128_xsh_rr_64_random_r()
1320 uint64_t threshold = -bound % bound; in pcg_unique_128_xsh_rr_64_boundedrand_r() local
1323 if (r >= threshold) in pcg_unique_128_xsh_rr_64_boundedrand_r()
1331 uint16_t oldstate = rng->state; in pcg_setseq_16_xsh_rr_8_random_r()
1340 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_setseq_16_xsh_rr_8_boundedrand_r() local
1343 if (r >= threshold) in pcg_setseq_16_xsh_rr_8_boundedrand_r()
1351 uint32_t oldstate = rng->state; in pcg_setseq_32_xsh_rr_16_random_r()
1360 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_setseq_32_xsh_rr_16_boundedrand_r() local
1363 if (r >= threshold) in pcg_setseq_32_xsh_rr_16_boundedrand_r()
1371 uint64_t oldstate = rng->state; in pcg_setseq_64_xsh_rr_32_random_r()
1380 uint32_t threshold = -bound % bound; in pcg_setseq_64_xsh_rr_32_boundedrand_r() local
1383 if (r >= threshold) in pcg_setseq_64_xsh_rr_32_boundedrand_r()
1393 return pcg_output_xsh_rr_128_64(rng->state); in pcg_setseq_128_xsh_rr_64_random_r()
1402 uint64_t threshold = -bound % bound; in pcg_setseq_128_xsh_rr_64_boundedrand_r() local
1405 if (r >= threshold) in pcg_setseq_128_xsh_rr_64_boundedrand_r()
1413 uint16_t oldstate = rng->state; in pcg_mcg_16_xsh_rr_8_random_r()
1421 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_mcg_16_xsh_rr_8_boundedrand_r() local
1424 if (r >= threshold) in pcg_mcg_16_xsh_rr_8_boundedrand_r()
1431 uint32_t oldstate = rng->state; in pcg_mcg_32_xsh_rr_16_random_r()
1439 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_mcg_32_xsh_rr_16_boundedrand_r() local
1442 if (r >= threshold) in pcg_mcg_32_xsh_rr_16_boundedrand_r()
1449 uint64_t oldstate = rng->state; in pcg_mcg_64_xsh_rr_32_random_r()
1457 uint32_t threshold = -bound % bound; in pcg_mcg_64_xsh_rr_32_boundedrand_r() local
1460 if (r >= threshold) in pcg_mcg_64_xsh_rr_32_boundedrand_r()
1469 return pcg_output_xsh_rr_128_64(rng->state); in pcg_mcg_128_xsh_rr_64_random_r()
1477 uint64_t threshold = -bound % bound; in pcg_mcg_128_xsh_rr_64_boundedrand_r() local
1480 if (r >= threshold) in pcg_mcg_128_xsh_rr_64_boundedrand_r()
1492 uint8_t oldstate = rng->state; in pcg_oneseq_8_rxs_m_xs_8_random_r()
1500 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_oneseq_8_rxs_m_xs_8_boundedrand_r() local
1503 if (r >= threshold) in pcg_oneseq_8_rxs_m_xs_8_boundedrand_r()
1510 uint16_t oldstate = rng->state; in pcg_oneseq_16_rxs_m_xs_16_random_r()
1519 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_oneseq_16_rxs_m_xs_16_boundedrand_r() local
1522 if (r >= threshold) in pcg_oneseq_16_rxs_m_xs_16_boundedrand_r()
1529 uint32_t oldstate = rng->state; in pcg_oneseq_32_rxs_m_xs_32_random_r()
1538 uint32_t threshold = -bound % bound; in pcg_oneseq_32_rxs_m_xs_32_boundedrand_r() local
1541 if (r >= threshold) in pcg_oneseq_32_rxs_m_xs_32_boundedrand_r()
1548 uint64_t oldstate = rng->state; in pcg_oneseq_64_rxs_m_xs_64_random_r()
1557 uint64_t threshold = -bound % bound; in pcg_oneseq_64_rxs_m_xs_64_boundedrand_r() local
1560 if (r >= threshold) in pcg_oneseq_64_rxs_m_xs_64_boundedrand_r()
1569 return pcg_output_rxs_m_xs_128_128(rng->state); in pcg_oneseq_128_rxs_m_xs_128_random_r()
1578 pcg128_t threshold = -bound % bound; in pcg_oneseq_128_rxs_m_xs_128_boundedrand_r() local
1581 if (r >= threshold) in pcg_oneseq_128_rxs_m_xs_128_boundedrand_r()
1589 uint16_t oldstate = rng->state; in pcg_unique_16_rxs_m_xs_16_random_r()
1598 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_unique_16_rxs_m_xs_16_boundedrand_r() local
1601 if (r >= threshold) in pcg_unique_16_rxs_m_xs_16_boundedrand_r()
1608 uint32_t oldstate = rng->state; in pcg_unique_32_rxs_m_xs_32_random_r()
1617 uint32_t threshold = -bound % bound; in pcg_unique_32_rxs_m_xs_32_boundedrand_r() local
1620 if (r >= threshold) in pcg_unique_32_rxs_m_xs_32_boundedrand_r()
1627 uint64_t oldstate = rng->state; in pcg_unique_64_rxs_m_xs_64_random_r()
1636 uint64_t threshold = -bound % bound; in pcg_unique_64_rxs_m_xs_64_boundedrand_r() local
1639 if (r >= threshold) in pcg_unique_64_rxs_m_xs_64_boundedrand_r()
1648 return pcg_output_rxs_m_xs_128_128(rng->state); in pcg_unique_128_rxs_m_xs_128_random_r()
1657 pcg128_t threshold = -bound % bound; in pcg_unique_128_rxs_m_xs_128_boundedrand_r() local
1660 if (r >= threshold) in pcg_unique_128_rxs_m_xs_128_boundedrand_r()
1668 uint8_t oldstate = rng->state; in pcg_setseq_8_rxs_m_xs_8_random_r()
1677 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_setseq_8_rxs_m_xs_8_boundedrand_r() local
1680 if (r >= threshold) in pcg_setseq_8_rxs_m_xs_8_boundedrand_r()
1688 uint16_t oldstate = rng->state; in pcg_setseq_16_rxs_m_xs_16_random_r()
1697 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_setseq_16_rxs_m_xs_16_boundedrand_r() local
1700 if (r >= threshold) in pcg_setseq_16_rxs_m_xs_16_boundedrand_r()
1708 uint32_t oldstate = rng->state; in pcg_setseq_32_rxs_m_xs_32_random_r()
1717 uint32_t threshold = -bound % bound; in pcg_setseq_32_rxs_m_xs_32_boundedrand_r() local
1720 if (r >= threshold) in pcg_setseq_32_rxs_m_xs_32_boundedrand_r()
1728 uint64_t oldstate = rng->state; in pcg_setseq_64_rxs_m_xs_64_random_r()
1737 uint64_t threshold = -bound % bound; in pcg_setseq_64_rxs_m_xs_64_boundedrand_r() local
1740 if (r >= threshold) in pcg_setseq_64_rxs_m_xs_64_boundedrand_r()
1750 return pcg_output_rxs_m_xs_128_128(rng->state); in pcg_setseq_128_rxs_m_xs_128_random_r()
1759 pcg128_t threshold = -bound % bound; in pcg_setseq_128_rxs_m_xs_128_boundedrand_r() local
1762 if (r >= threshold) in pcg_setseq_128_rxs_m_xs_128_boundedrand_r()
1772 uint16_t oldstate = rng->state; in pcg_oneseq_16_rxs_m_8_random_r()
1780 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_oneseq_16_rxs_m_8_boundedrand_r() local
1783 if (r >= threshold) in pcg_oneseq_16_rxs_m_8_boundedrand_r()
1790 uint32_t oldstate = rng->state; in pcg_oneseq_32_rxs_m_16_random_r()
1798 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_oneseq_32_rxs_m_16_boundedrand_r() local
1801 if (r >= threshold) in pcg_oneseq_32_rxs_m_16_boundedrand_r()
1808 uint64_t oldstate = rng->state; in pcg_oneseq_64_rxs_m_32_random_r()
1816 uint32_t threshold = -bound % bound; in pcg_oneseq_64_rxs_m_32_boundedrand_r() local
1819 if (r >= threshold) in pcg_oneseq_64_rxs_m_32_boundedrand_r()
1828 return pcg_output_rxs_m_128_64(rng->state); in pcg_oneseq_128_rxs_m_64_random_r()
1836 uint64_t threshold = -bound % bound; in pcg_oneseq_128_rxs_m_64_boundedrand_r() local
1839 if (r >= threshold) in pcg_oneseq_128_rxs_m_64_boundedrand_r()
1847 uint16_t oldstate = rng->state; in pcg_unique_16_rxs_m_8_random_r()
1855 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_unique_16_rxs_m_8_boundedrand_r() local
1858 if (r >= threshold) in pcg_unique_16_rxs_m_8_boundedrand_r()
1865 uint32_t oldstate = rng->state; in pcg_unique_32_rxs_m_16_random_r()
1873 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_unique_32_rxs_m_16_boundedrand_r() local
1876 if (r >= threshold) in pcg_unique_32_rxs_m_16_boundedrand_r()
1883 uint64_t oldstate = rng->state; in pcg_unique_64_rxs_m_32_random_r()
1891 uint32_t threshold = -bound % bound; in pcg_unique_64_rxs_m_32_boundedrand_r() local
1894 if (r >= threshold) in pcg_unique_64_rxs_m_32_boundedrand_r()
1903 return pcg_output_rxs_m_128_64(rng->state); in pcg_unique_128_rxs_m_64_random_r()
1911 uint64_t threshold = -bound % bound; in pcg_unique_128_rxs_m_64_boundedrand_r() local
1914 if (r >= threshold) in pcg_unique_128_rxs_m_64_boundedrand_r()
1922 uint16_t oldstate = rng->state; in pcg_setseq_16_rxs_m_8_random_r()
1931 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_setseq_16_rxs_m_8_boundedrand_r() local
1934 if (r >= threshold) in pcg_setseq_16_rxs_m_8_boundedrand_r()
1941 uint32_t oldstate = rng->state; in pcg_setseq_32_rxs_m_16_random_r()
1950 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_setseq_32_rxs_m_16_boundedrand_r() local
1953 if (r >= threshold) in pcg_setseq_32_rxs_m_16_boundedrand_r()
1960 uint64_t oldstate = rng->state; in pcg_setseq_64_rxs_m_32_random_r()
1969 uint32_t threshold = -bound % bound; in pcg_setseq_64_rxs_m_32_boundedrand_r() local
1972 if (r >= threshold) in pcg_setseq_64_rxs_m_32_boundedrand_r()
1982 return pcg_output_rxs_m_128_64(rng->state); in pcg_setseq_128_rxs_m_64_random_r()
1991 uint64_t threshold = -bound % bound; in pcg_setseq_128_rxs_m_64_boundedrand_r() local
1994 if (r >= threshold) in pcg_setseq_128_rxs_m_64_boundedrand_r()
2002 uint16_t oldstate = rng->state; in pcg_mcg_16_rxs_m_8_random_r()
2010 uint8_t threshold = ((uint8_t)(-bound)) % bound; in pcg_mcg_16_rxs_m_8_boundedrand_r() local
2013 if (r >= threshold) in pcg_mcg_16_rxs_m_8_boundedrand_r()
2020 uint32_t oldstate = rng->state; in pcg_mcg_32_rxs_m_16_random_r()
2028 uint16_t threshold = ((uint16_t)(-bound)) % bound; in pcg_mcg_32_rxs_m_16_boundedrand_r() local
2031 if (r >= threshold) in pcg_mcg_32_rxs_m_16_boundedrand_r()
2038 uint64_t oldstate = rng->state; in pcg_mcg_64_rxs_m_32_random_r()
2046 uint32_t threshold = -bound % bound; in pcg_mcg_64_rxs_m_32_boundedrand_r() local
2049 if (r >= threshold) in pcg_mcg_64_rxs_m_32_boundedrand_r()
2058 return pcg_output_rxs_m_128_64(rng->state); in pcg_mcg_128_rxs_m_64_random_r()
2066 uint64_t threshold = -bound % bound; in pcg_mcg_128_rxs_m_64_boundedrand_r() local
2069 if (r >= threshold) in pcg_mcg_128_rxs_m_64_boundedrand_r()
2079 uint64_t oldstate = rng->state; in pcg_oneseq_64_xsl_rr_32_random_r()
2087 uint32_t threshold = -bound % bound; in pcg_oneseq_64_xsl_rr_32_boundedrand_r() local
2090 if (r >= threshold) in pcg_oneseq_64_xsl_rr_32_boundedrand_r()
2099 return pcg_output_xsl_rr_128_64(rng->state); in pcg_oneseq_128_xsl_rr_64_random_r()
2108 uint64_t threshold = -bound % bound; in pcg_oneseq_128_xsl_rr_64_boundedrand_r() local
2111 if (r >= threshold) in pcg_oneseq_128_xsl_rr_64_boundedrand_r()
2119 uint64_t oldstate = rng->state; in pcg_unique_64_xsl_rr_32_random_r()
2127 uint32_t threshold = -bound % bound; in pcg_unique_64_xsl_rr_32_boundedrand_r() local
2130 if (r >= threshold) in pcg_unique_64_xsl_rr_32_boundedrand_r()
2139 return pcg_output_xsl_rr_128_64(rng->state); in pcg_unique_128_xsl_rr_64_random_r()
2148 uint64_t threshold = -bound % bound; in pcg_unique_128_xsl_rr_64_boundedrand_r() local
2151 if (r >= threshold) in pcg_unique_128_xsl_rr_64_boundedrand_r()
2160 uint64_t oldstate = rng->state; in pcg_setseq_64_xsl_rr_32_random_r()
2169 uint32_t threshold = -bound % bound; in pcg_setseq_64_xsl_rr_32_boundedrand_r() local
2172 if (r >= threshold) in pcg_setseq_64_xsl_rr_32_boundedrand_r()
2182 return pcg_output_xsl_rr_128_64(rng->state); in pcg_setseq_128_xsl_rr_64_random_r()
2191 uint64_t threshold = -bound % bound; in pcg_setseq_128_xsl_rr_64_boundedrand_r() local
2194 if (r >= threshold) in pcg_setseq_128_xsl_rr_64_boundedrand_r()
2202 uint64_t oldstate = rng->state; in pcg_mcg_64_xsl_rr_32_random_r()
2210 uint32_t threshold = -bound % bound; in pcg_mcg_64_xsl_rr_32_boundedrand_r() local
2213 if (r >= threshold) in pcg_mcg_64_xsl_rr_32_boundedrand_r()
2222 return pcg_output_xsl_rr_128_64(rng->state); in pcg_mcg_128_xsl_rr_64_random_r()
2230 uint64_t threshold = -bound % bound; in pcg_mcg_128_xsl_rr_64_boundedrand_r() local
2233 if (r >= threshold) in pcg_mcg_128_xsl_rr_64_boundedrand_r()
2243 uint64_t oldstate = rng->state; in pcg_oneseq_64_xsl_rr_rr_64_random_r()
2252 uint64_t threshold = -bound % bound; in pcg_oneseq_64_xsl_rr_rr_64_boundedrand_r() local
2255 if (r >= threshold) in pcg_oneseq_64_xsl_rr_rr_64_boundedrand_r()
2264 return pcg_output_xsl_rr_rr_128_128(rng->state); in pcg_oneseq_128_xsl_rr_rr_128_random_r()
2273 pcg128_t threshold = -bound % bound; in pcg_oneseq_128_xsl_rr_rr_128_boundedrand_r() local
2276 if (r >= threshold) in pcg_oneseq_128_xsl_rr_rr_128_boundedrand_r()
2284 uint64_t oldstate = rng->state; in pcg_unique_64_xsl_rr_rr_64_random_r()
2293 uint64_t threshold = -bound % bound; in pcg_unique_64_xsl_rr_rr_64_boundedrand_r() local
2296 if (r >= threshold) in pcg_unique_64_xsl_rr_rr_64_boundedrand_r()
2305 return pcg_output_xsl_rr_rr_128_128(rng->state); in pcg_unique_128_xsl_rr_rr_128_random_r()
2314 pcg128_t threshold = -bound % bound; in pcg_unique_128_xsl_rr_rr_128_boundedrand_r() local
2317 if (r >= threshold) in pcg_unique_128_xsl_rr_rr_128_boundedrand_r()
2326 uint64_t oldstate = rng->state; in pcg_setseq_64_xsl_rr_rr_64_random_r()
2335 uint64_t threshold = -bound % bound; in pcg_setseq_64_xsl_rr_rr_64_boundedrand_r() local
2338 if (r >= threshold) in pcg_setseq_64_xsl_rr_rr_64_boundedrand_r()
2348 return pcg_output_xsl_rr_rr_128_128(rng->state); in pcg_setseq_128_xsl_rr_rr_128_random_r()
2357 pcg128_t threshold = -bound % bound; in pcg_setseq_128_xsl_rr_rr_128_boundedrand_r() local
2360 if (r >= threshold) in pcg_setseq_128_xsl_rr_rr_128_boundedrand_r()