org.openjdk.jcstress.tests.atomicity.varHandles.byteBuffer.direct.big.GetAndSetTest.GetAndSetInt

Tests atomicity of getAndSet.

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

Observed state Occurrence Expectation Interpretation
-2, 0, -1 10213 ACCEPTABLE actor1 execute after actor2
0, -1, -2 197517 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 72108 ACCEPTABLE actor1 execute after actor2
0, -1, -2 305502 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:+UnlockDiagnosticVMOptions, -XX:+StressLCM, -XX:+StressGCM] Iterations: 5 Time: 200

Observed state Occurrence Expectation Interpretation
-2, 0, -1 120035 ACCEPTABLE actor1 execute after actor2
0, -1, -2 357525 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 90834 ACCEPTABLE actor1 execute after actor2
0, -1, -2 206986 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 12521 ACCEPTABLE actor1 execute after actor2
0, -1, -2 16659 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 44453 ACCEPTABLE actor1 execute after actor2
0, -1, -2 165967 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 59461 ACCEPTABLE actor1 execute after actor2
0, -1, -2 231679 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 43867 ACCEPTABLE actor1 execute after actor2
0, -1, -2 236863 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