org.openjdk.jcstress.tests.atomicity.varHandles.arrays.CAETest.CompareAndExchangeAcquireBoolean

Tests atomicity of compareAndExchange.

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 577229 ACCEPTABLE actor1 update successfully
true, false, true 199061 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 808361 ACCEPTABLE actor1 update successfully
true, false, true 282449 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 1047607 ACCEPTABLE actor1 update successfully
true, false, true 648223 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 281581 ACCEPTABLE actor1 update successfully
true, false, true 169099 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 26576 ACCEPTABLE actor1 update successfully
true, false, true 48554 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 197919 ACCEPTABLE actor1 update successfully
true, false, true 61351 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 275857 ACCEPTABLE actor1 update successfully
true, false, true 96513 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
false, false, false 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, false, true 0 FORBIDDEN This won't happen because compareAndExchange is atomic
false, true, true 1126804 ACCEPTABLE actor1 update successfully
true, false, true 462546 ACCEPTABLE actor2 update successfully