Request for review (S): 7022998: JSR 292 recursive method handle calls inline themselves infinitely
Christian Thalinger
christian.thalinger at oracle.com
Tue Mar 15 06:35:47 PDT 2011
http://cr.openjdk.java.net/~twisti/7022998/
7022998: JSR 292 recursive method handle calls inline themselves infinitely
Reviewed-by:
Methods doing recursive method handle calls, like in JRuby's
bench_fib_resursive.rb or bench_tak.rb, inline themselves infinitely.
This results in a huge method which hits compile thresholds and aborts
inlining resulting in poor performance.
The inlining logic needs to know about method handle call sites and
search the call stack for recursive calls.
This change also cleans up the PrintCompilation, PrintInlining and
TraceTypeProfile output to be aligned since the tiered compilation
changes added some additional output.
src/share/vm/c1/c1_GraphBuilder.cpp
src/share/vm/opto/bytecodeInfo.cpp
src/share/vm/opto/doCall.cpp
src/share/vm/runtime/sharedRuntime.cpp
More information about the hotspot-compiler-dev
mailing list