Returns random numbers between [low, high), or low if low >= high
| 546 | |
| 547 | // Returns random numbers between [low, high), or low if low >= high |
| 548 | inline vint spmd_kernel::get_randi(rand_context& x, vint low, vint high) |
| 549 | { |
| 550 | vint rnd = get_randu(x); |
| 551 | |
| 552 | vint range = high - low; |
| 553 | |
| 554 | vint rnd_range = mulhiu(rnd, range); |
| 555 | |
| 556 | return spmd_ternaryi(low < high, low + rnd_range, low); |
| 557 | } |
| 558 | |
| 559 | // Returns random numbers between [low, high), or low if low >= high |
| 560 | inline vfloat spmd_kernel::get_randf(rand_context& x, vfloat low, vfloat high) |
nothing calls this directly
no test coverage detected