RFR(S): 8134883: C1 hard crash in range check elimination in Nashorn test262parallel
Igor Veresov
igor.veresov at oracle.com
Fri Dec 4 18:23:01 UTC 2015
Looks good.
igor
> On Dec 4, 2015, at 8:40 AM, Roland Westrelin <roland.westrelin at oracle.com> wrote:
>
> http://cr.openjdk.java.net/~roland/8134883/webrev.00/
>
> The problem happens when c1’s loop optimizations encounter a non natural loop for which one entry is an exception handler. C1’s loop optimizations usually ignore non natural loop but in that case, it misses that there’s a non natural loop, half build the loop data structures (marks the loop header but doesn’t keep track of the blocks that belong to the loop). AFAICT, C1 also bails out when it encounters a natural loop with an exception handler as header. The fix I propose simply doesn’t mark the loop header and loop end for any loop with an exception handler header so the loop is ignored by loop optimizations.
>
> Roland.
More information about the hotspot-compiler-dev
mailing list