RFR (XS): 8035887: VM crashes trying to force inlining the recursive call
vladimir.x.ivanov at oracle.com
Thu Feb 27 09:09:30 PST 2014
4 lines changed: 3 ins; 0 del; 1 mod
C1 overflows the stack when it tries to inline a recursive call of a
method which is forced for inlining by CompilerOracle.
The problem is that C1 doesn't check inlining depth for methods forced
for inlining by CompilerOracle.
The fix is to add missing checks. I added 2 checks (total depth and
recursive depth). The former is to avoid a situation (very unlikely)
when a long chain of methods, which are forced for inlining, overflows
compiler stack. The latter is to unify behavior between C1 & C2.
No regression test is added because it can take very long time to
provoke the crash in some configurations.
Testing: failing test
More information about the hotspot-compiler-dev