src/share/vm/c1/c1_GraphBuilder.cpp

changeset 4532
60bba1398c51
parent 4446
d92fa52a5d03
child 4860
46f6f063b272
     1.1 --- a/src/share/vm/c1/c1_GraphBuilder.cpp	Fri Feb 01 02:50:23 2013 -0800
     1.2 +++ b/src/share/vm/c1/c1_GraphBuilder.cpp	Fri Feb 01 03:02:01 2013 -0800
     1.3 @@ -3667,11 +3667,12 @@
     1.4    }
     1.5  
     1.6    // now perform tests that are based on flag settings
     1.7 -  if (callee->force_inline() || callee->should_inline()) {
     1.8 -    // ignore heuristic controls on inlining
     1.9 -    if (callee->force_inline())
    1.10 -      print_inlining(callee, "force inline by annotation");
    1.11 +  if (callee->force_inline()) {
    1.12 +    print_inlining(callee, "force inline by annotation");
    1.13 +  } else if (callee->should_inline()) {
    1.14 +    print_inlining(callee, "force inline by CompileOracle");
    1.15    } else {
    1.16 +    // use heuristic controls on inlining
    1.17      if (inline_level() > MaxInlineLevel                         ) INLINE_BAILOUT("inlining too deep");
    1.18      if (recursive_inline_level(callee) > MaxRecursiveInlineLevel) INLINE_BAILOUT("recursive inlining too deep");
    1.19      if (callee->code_size_for_inlining() > max_inline_size()    ) INLINE_BAILOUT("callee is too large");

mercurial