org.openjdk.jcstress.tests.fences.varHandles.StoreLoadFenceTest.FullFenceDouble

Tests VarHandle methods which take effect of store load fence.

[1]

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 731929 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 615204 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 157 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 2603770 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 646551 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 2069 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 1158379 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 1361394 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 5957 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 452733 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 978507 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 490 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 478660 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 276130 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 21280 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 27384 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 64166 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 430 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 314662 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 428823 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 4935 ACCEPTABLE both actor1 and actor2 observe each other update

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

Observed state Occurrence Expectation Interpretation
.*, 1.39067116124321E-309 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec
0.0, 0.0 0 FORBIDDEN if r1 = 0, store var must be submitted already before fullFence in actor2, r2 must get the update
0.0, 1.39067116124321E-309 721793 ACCEPTABLE actor2 observe actor1 update, actor1 not yet observe actor2 update
1.39067116124321E-309, .* 0 ACCEPTABLE_SPEC Non-atomic access detected, allowed by spec.
1.39067116124321E-309, 0.0 510707 ACCEPTABLE actor1 observe actor2 update, actor2 not yet observe actor1 update
1.39067116124321E-309, 1.39067116124321E-309 180 ACCEPTABLE both actor1 and actor2 observe each other update