for offsets larger than 32, rotate right by 64 - offset */
| 444 | |
| 445 | /* for offsets larger than 32, rotate right by 64 - offset */ |
| 446 | static Rand64 rotl1 (Rand64 i, int n) { |
| 447 | lua_assert(n > 32 && n < 64); |
| 448 | n = 64 - n; |
| 449 | return packI((trim32(i.h) >> n) | (i.l << (32 - n)), |
| 450 | (i.h << (32 - n)) | (trim32(i.l) >> n)); |
| 451 | } |
| 452 | |
| 453 | /* |
| 454 | ** implementation of 'xoshiro256**' algorithm on 'Rand64' values |