equal
deleted
inserted
replaced
381 // We currently use a Marsaglia Shift-Xor RNG loop. |
381 // We currently use a Marsaglia Shift-Xor RNG loop. |
382 if (Self != NULL) { |
382 if (Self != NULL) { |
383 jint rv = Self->rng[0]; |
383 jint rv = Self->rng[0]; |
384 for (int k = Delay; --k >= 0;) { |
384 for (int k = Delay; --k >= 0;) { |
385 rv = MarsagliaXORV(rv); |
385 rv = MarsagliaXORV(rv); |
386 if (SafepointMechanism::poll(Self)) return 0; |
386 if (SafepointMechanism::should_block(Self)) return 0; |
387 } |
387 } |
388 Self->rng[0] = rv; |
388 Self->rng[0] = rv; |
389 } else { |
389 } else { |
390 Stall(Delay); |
390 Stall(Delay); |
391 } |
391 } |