org.openjdk.jcstress.tests.fences.varHandles.LoadStoreFenceTest2.AcquireFenceLong

Tests VarHandle methods which take effect of load store fence.

[1]

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

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load var after store y in actor1.
-1, 0 565967 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 1438813 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 257463 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 2003127 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 185490 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 879620 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 462199 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 2573681 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 205616 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 1118194 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 1155 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 112995 ACCEPTABLE load y in actor2 before store -1 to y in actor1, all results are 0

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

Observed state Occurrence Expectation Interpretation
-1, -1 0 FORBIDDEN can't load var after store y in actor1.
-1, 0 363804 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 820776 ACCEPTABLE load y in actor2 before store -1 to y 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 var after store y in actor1.
-1, 0 71516 ACCEPTABLE store -1 to y in actor1 before load y in actor2
.*, 0 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec, r2 only can be assigned to 0.
0, -1 0 FORBIDDEN this won't happen even if load var after store y because only if r1 = -1 var may be assigned to -1 and then r2 can be -1 from var.
0, 0 9194 ACCEPTABLE load y in actor2 before store -1 to y in actor1, all results are 0