src/java.base/share/classes/java/util/random/L32X64MixRandom.java
branchJDK-8193209-branch
changeset 57684 7cb325557832
parent 57547 56cbdc3ea079
--- 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
     }