org.openjdk.jcstress.tests.fences.varHandles.LoadStoreFenceTest1.ReleaseFenceShort

Tests VarHandle methods which take effect of load store fence.

JVM options: [-server, -XX:-TieredCompilation] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 533961 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 1441369 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-client, -XX:-TieredCompilation] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 413410 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 1400890 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-Xint] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 10543 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 124807 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-server] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 887931 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 3253509 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-client] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 524097 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 2504993 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-server, -XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 332056 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 1212894 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-server, -XX:-TieredCompilation, -XX:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 215194 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 884326 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0

JVM options: [-XX:TieredStopAtLevel=1] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load x after store var in actor1.
-1, 0 312348 ACCEPTABLE store -1 to var in actor1 before load var in actor2
0, -1 0 FORBIDDEN this won't happen even if load x after store var because only if r1 = -1 x may be assigned to -1 and then r2 can be -1 from x.
0, 0 2560492 ACCEPTABLE load var in actor2 before store -1 to var in actor1, all results are 0