[9] RFR (XS): 8144935: C2: safepoint is pruned from a non-counted loop

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Thu Dec 10 00:09:48 UTC 2015


http://cr.openjdk.java.net/~vlivanov/8144935/webrev.00/
https://bugs.openjdk.java.net/browse/JDK-8144935

Recent fix for 6869327 introduced a regression - C2 became too 
aggressive when pruning redundant safepoint checks in the loop.

If it is required to keep a safepoint in a loop, it is not safe to 
remove any safepoints unless there's a safepoint dominating all paths in 
the loop body.

The fix is to restore original behavior.

Also, slightly enhanced -XX:+TraceLoopOpts output.

Testing: failing test.

Best regards,
Vladimir Ivanov


More information about the hotspot-compiler-dev mailing list