org.openjdk.jcstress.tests.atomicity.varHandles.arrays.GetAndSetTest.GetAndSetFloat

Tests atomicity of getAndSet.

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 1179071 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 190799 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 642750 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 22710 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, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 1237745 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 145555 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, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 766902 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 50288 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 170296 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 114804 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 46971 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 11469 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 585014 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 18366 ACCEPTABLE actor1 execute after actor2

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because getAndSet is atomic
0.0, 2.3509528E-38, 2.0 49617 ACCEPTABLE actor1 execute before actor2
2.0, 0.0, 2.3509528E-38 53 ACCEPTABLE actor1 execute after actor2