review request (S): 7126041: jdk7u4 b05 and b06 crash with RubyMine 3.2.4, works well with b04
Roland Westrelin
roland.westrelin at oracle.com
Fri Feb 10 09:16:13 PST 2012
http://cr.openjdk.java.net/~roland/7126041/webrev.00/
When incrementing backedge counters in a c1 method some forward branches can be mistaken for back branches: when a If is converted to a Goto, the Goto is marked as a safepoint even if the branch that is kept is the forward branch. When a Goto is marked as a safepoint, profiling code is emitted for a back branch so we can end up doing an OSR compile for a back branch that is never taken to some code the compiler thinks is unreachable.
More information about the hotspot-compiler-dev
mailing list