[9] RFR(S) 8059299: assert(adr_type != NULL) failed: expecting TypeKlassPtr
Vladimir Kozlov
vladimir.kozlov at oracle.com
Thu Oct 2 04:05:32 UTC 2014
http://cr.openjdk.java.net/~kvn/8059299/webrev/
https://bugs.openjdk.java.net/browse/JDK-8059299
Code in Parse::catch_inline_exceptions() incorrectly assumed that all
paths reach the merge point in next code:
catch (Exception e) {
if (e instanceof Exception1) {
counter1++;
} else if (e instanceof Exception2) {
counter2++;
}
counter++;
throw e;
}
But we generate an uncommon trap when profiling information matches
checked exception (in the bug case Exception2, which is the only thrown
exception).
The fix is to use top() for dead paths when initializing Phi node of
exceptions klasses. Also did code style clean up in surrounding code.
Added new regression test.
Thanks,
Vladimir
More information about the hotspot-compiler-dev
mailing list