org.openjdk.jcstress.tests.atomicity.varHandles.byteBuffer.direct.little.CAETest.CompareAndExchangeAcquireFloat

Tests atomicity of compareAndExchange.

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 235121 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 18189 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 391047 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 50733 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 161107 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 30453 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 90623 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 89387 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 345499 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 88921 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 70575 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 6695 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 22855 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 105 ACCEPTABLE actor2 update successfully

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

Observed state Occurrence Expectation Interpretation
0.0, 0.0, 0.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.0 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 0.0, 2.3509528E-38 0 FORBIDDEN This won't happen because compareAndExchange is atomic
0.0, 2.3509528E-38, 2.3509528E-38 300776 ACCEPTABLE actor1 update successfully
2.0, 0.0, 2.0 122764 ACCEPTABLE actor2 update successfully