mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-25 13:54:38 +02:00
8012941: JSR 292: too deep inlining might crash compiler because of stack overflow
Reviewed-by: kvn, twisti
This commit is contained in:
parent
3375e14588
commit
cb5592b08e
2 changed files with 3 additions and 0 deletions
|
@ -3768,6 +3768,7 @@ bool GraphBuilder::try_inline_full(ciMethod* callee, bool holder_known, Bytecode
|
||||||
|
|
||||||
// now perform tests that are based on flag settings
|
// now perform tests that are based on flag settings
|
||||||
if (callee->force_inline()) {
|
if (callee->force_inline()) {
|
||||||
|
if (inline_level() > MaxForceInlineLevel) INLINE_BAILOUT("MaxForceInlineLevel");
|
||||||
print_inlining(callee, "force inline by annotation");
|
print_inlining(callee, "force inline by annotation");
|
||||||
} else if (callee->should_inline()) {
|
} else if (callee->should_inline()) {
|
||||||
print_inlining(callee, "force inline by CompileOracle");
|
print_inlining(callee, "force inline by CompileOracle");
|
||||||
|
|
|
@ -341,6 +341,8 @@
|
||||||
diagnostic(bool, C1PatchInvokeDynamic, true, \
|
diagnostic(bool, C1PatchInvokeDynamic, true, \
|
||||||
"Patch invokedynamic appendix not known at compile time") \
|
"Patch invokedynamic appendix not known at compile time") \
|
||||||
\
|
\
|
||||||
|
develop(intx, MaxForceInlineLevel, 100, \
|
||||||
|
"maximum number of nested @ForceInline calls that are inlined") \
|
||||||
\
|
\
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue