< prev index next >

hotspot/src/share/vm/runtime/advancedThresholdPolicy.cpp

Print this page
rev 6907 : 8056071: compiler/whitebox/IsMethodCompilableTest.java fails with 'method() is not compilable after 3 iterations'
Summary: Always use MDO if valid and always compile trivial methods with C1 if available.
Reviewed-by: kvn, iveresov

*** 314,325 **** * level 2 and wait until the load on C2 decreases. This path is disabled for OSRs. * * c. 0 -> (3->2) -> 4. * In this case we enqueue a method for compilation at level 3, but the C1 queue is long enough * to enable the profiling to fully occur at level 0. In this case we change the compilation level ! * of the method to 2, because it'll allow it to run much faster without full profiling while c2 ! * is compiling. * * d. 0 -> 3 -> 1 or 0 -> 2 -> 1. * After a method was once compiled with C1 it can be identified as trivial and be compiled to * level 1. These transition can also occur if a method can't be compiled with C2 but can with C1. * --- 314,325 ---- * level 2 and wait until the load on C2 decreases. This path is disabled for OSRs. * * c. 0 -> (3->2) -> 4. * In this case we enqueue a method for compilation at level 3, but the C1 queue is long enough * to enable the profiling to fully occur at level 0. In this case we change the compilation level ! * of the method to 2 while the request is still in-queue, because it'll allow it to run much faster ! * without full profiling while c2 is compiling. * * d. 0 -> 3 -> 1 or 0 -> 2 -> 1. * After a method was once compiled with C1 it can be identified as trivial and be compiled to * level 1. These transition can also occur if a method can't be compiled with C2 but can with C1. *
< prev index next >