--- a/src/java.base/share/classes/java/util/random/L32X64MixRandom.java Wed Aug 07 15:35:55 2019 -0300
+++ b/src/java.base/share/classes/java/util/random/L32X64MixRandom.java Thu Aug 08 11:06:54 2019 -0300
@@ -61,7 +61,7 @@
* The LCG subgenerator for {@link L32X64MixRandom} has an update step of the
* form {@code s = m * s + a}, where {@code s}, {@code m}, and {@code a} are all
* of type {@code int}; {@code s} is the mutable state, the multiplier {@code m}
- * is fixed (the same for all instances of {@link L32X64MixRandom}}) and the addend
+ * is fixed (the same for all instances of {@link L32X64MixRandom}) and the addend
* {@code a} is a parameter (a final field of the instance). The parameter
* {@code a} is required to be odd (this allows the LCG to have the maximal
* period, namely 2<sup>32</sup>); therefore there are 2<sup>31</sup> distinct choices
@@ -290,8 +290,8 @@
* the same expected statistical properties apply to the entire set of generators constructed by
* such recursive splitting.
*
- * @param source a {@link SplittableGenerator} instance to be used instead of this one as a source of
- * pseudorandom bits used to initialize the state of the new ones.
+ * @param source a {@link SplittableGenerator} instance to be used instead of this one as
+ * a source of pseudorandom bits used to initialize the state of the new ones.
*
* @return a new instance of {@link L32X64MixRandom}
*/
@@ -310,7 +310,12 @@
final int z = s + x0;
s = M * s + a; // LCG
int q0 = x0, q1 = x1;
- { q1 ^= q0; q0 = Integer.rotateLeft(q0, 26); q0 = q0 ^ q1 ^ (q1 << 9); q1 = Integer.rotateLeft(q1, 13); } // xoroshiro64
+ { // xoroshiro64
+ q1 ^= q0;
+ q0 = Integer.rotateLeft(q0, 26);
+ q0 = q0 ^ q1 ^ (q1 << 9);
+ q1 = Integer.rotateLeft(q1, 13);
+ }
x0 = q0; x1 = q1;
return Integer.rotateLeft(z * 5, 7) * 9; // "starstar" mixing function
}