org.openjdk.jcstress.tests.atomicity.varHandles.fields.GetAndSetTest.GetAndSetLong

Tests atomicity of getAndSet.

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 96241 ACCEPTABLE actor1 execute after actor2
0, -1, -2 441319 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 54714 ACCEPTABLE actor1 execute after actor2
0, -1, -2 34706 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 664234 ACCEPTABLE actor1 execute after actor2
0, -1, -2 1380996 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 192224 ACCEPTABLE actor1 execute after actor2
0, -1, -2 421946 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 409374 ACCEPTABLE actor1 execute after actor2
0, -1, -2 655506 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 247055 ACCEPTABLE actor1 execute after actor2
0, -1, -2 509545 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 319442 ACCEPTABLE actor1 execute after actor2
0, -1, -2 700318 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 141002 ACCEPTABLE actor1 execute after actor2
0, -1, -2 927008 ACCEPTABLE actor1 execute before actor2
0, 0, -1 0 FORBIDDEN This won't happen because getAndSet is atomic
0, 0, -2 0 FORBIDDEN This won't happen because getAndSet is atomic