org.openjdk.jcstress.tests.atomicity.varHandles.byteBuffer.direct.little.GetAndSetTest.GetAndSetDouble

Tests atomicity of getAndSet.

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 368422 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 91258 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 399868 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 15162 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 34276 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 16494 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 352575 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 57115 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 225741 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 26279 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 20118 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 52 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 308862 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 59678 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 1.39067116124321E-309 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 1.39067116124321E-309, 2.0 262468 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 1.39067116124321E-309 63642 ACCEPTABLE actor1 execute after actor2