comparison src/share/vm/c1/c1_GraphBuilder.cpp @ 6222:6d8f36bcef55

6711908: JVM needs direct access to some annotations Summary: Add annotation extraction code to class file parser. Reviewed-by: twisti, jrose, kvn Contributed-by: michael.haupt@oracle.com
author jrose
date Thu, 12 Jul 2012 00:39:53 -0700
parents 8b0a4867acf0
children 1d7922586cf6
comparison
equal deleted inserted replaced
6207:ae9241bbce4a 6222:6d8f36bcef55
3503 if (is_profiling() && !callee->ensure_method_data()) { 3503 if (is_profiling() && !callee->ensure_method_data()) {
3504 INLINE_BAILOUT("mdo allocation failed"); 3504 INLINE_BAILOUT("mdo allocation failed");
3505 } 3505 }
3506 3506
3507 // now perform tests that are based on flag settings 3507 // now perform tests that are based on flag settings
3508 if (callee->should_inline()) { 3508 if (callee->force_inline() || callee->should_inline()) {
3509 // ignore heuristic controls on inlining 3509 // ignore heuristic controls on inlining
3510 if (callee->force_inline())
3511 CompileTask::print_inlining(callee, scope()->level(), bci(), "force inline by annotation");
3510 } else { 3512 } else {
3511 if (inline_level() > MaxInlineLevel ) INLINE_BAILOUT("too-deep inlining"); 3513 if (inline_level() > MaxInlineLevel ) INLINE_BAILOUT("too-deep inlining");
3512 if (recursive_inline_level(callee) > MaxRecursiveInlineLevel) INLINE_BAILOUT("too-deep recursive inlining"); 3514 if (recursive_inline_level(callee) > MaxRecursiveInlineLevel) INLINE_BAILOUT("too-deep recursive inlining");
3513 if (callee->code_size_for_inlining() > max_inline_size() ) INLINE_BAILOUT("callee is too large"); 3515 if (callee->code_size_for_inlining() > max_inline_size() ) INLINE_BAILOUT("callee is too large");
3514 3516
3529 INLINE_BAILOUT("total inlining greater than DesiredMethodLimit"); 3531 INLINE_BAILOUT("total inlining greater than DesiredMethodLimit");
3530 } 3532 }
3531 } 3533 }
3532 3534
3533 #ifndef PRODUCT 3535 #ifndef PRODUCT
3534 // printing 3536 // printing
3535 if (PrintInlining) { 3537 if (PrintInlining) {
3536 print_inline_result(callee, true); 3538 print_inline_result(callee, true);
3537 } 3539 }
3538 #endif 3540 #endif
3539 3541