< prev index next >

src/hotspot/share/opto/parse1.cpp

Print this page

 406   _block = NULL;
 407   _first_return = true;
 408   _replaced_nodes_for_exceptions = false;
 409   _new_idx = C->unique();
 410   debug_only(_block_count = -1);
 411   debug_only(_blocks = (Block*)-1);
 412 #ifndef PRODUCT
 413   if (PrintCompilation || PrintOpto) {
 414     // Make sure I have an inline tree, so I can print messages about it.
 415     JVMState* ilt_caller = is_osr_parse() ? caller->caller() : caller;
 416     InlineTree::find_subtree_from_root(C->ilt(), ilt_caller, parse_method);
 417   }
 418   _max_switch_depth = 0;
 419   _est_switch_depth = 0;
 420 #endif
 421 
 422   if (parse_method->has_reserved_stack_access()) {
 423     C->set_has_reserved_stack_access(true);
 424   }
 425 




 426   _tf = TypeFunc::make(method());
 427   _iter.reset_to_method(method());
 428   _flow = method()->get_flow_analysis();
 429   if (_flow->failing()) {
 430     C->record_method_not_compilable(_flow->failure_reason());
 431   }
 432 
 433 #ifndef PRODUCT
 434   if (_flow->has_irreducible_entry()) {
 435     C->set_parsed_irreducible_loop(true);
 436   }
 437 #endif
 438   C->set_has_loops(C->has_loops() || method()->has_loops());
 439 
 440   if (_expected_uses <= 0) {
 441     _prof_factor = 1;
 442   } else {
 443     float prof_total = parse_method->interpreter_invocation_count();
 444     if (prof_total <= _expected_uses) {
 445       _prof_factor = 1;

 406   _block = NULL;
 407   _first_return = true;
 408   _replaced_nodes_for_exceptions = false;
 409   _new_idx = C->unique();
 410   debug_only(_block_count = -1);
 411   debug_only(_blocks = (Block*)-1);
 412 #ifndef PRODUCT
 413   if (PrintCompilation || PrintOpto) {
 414     // Make sure I have an inline tree, so I can print messages about it.
 415     JVMState* ilt_caller = is_osr_parse() ? caller->caller() : caller;
 416     InlineTree::find_subtree_from_root(C->ilt(), ilt_caller, parse_method);
 417   }
 418   _max_switch_depth = 0;
 419   _est_switch_depth = 0;
 420 #endif
 421 
 422   if (parse_method->has_reserved_stack_access()) {
 423     C->set_has_reserved_stack_access(true);
 424   }
 425 
 426   if (parse_method->is_synchronized()) {
 427     C->set_has_monitors(true);
 428   }
 429 
 430   _tf = TypeFunc::make(method());
 431   _iter.reset_to_method(method());
 432   _flow = method()->get_flow_analysis();
 433   if (_flow->failing()) {
 434     C->record_method_not_compilable(_flow->failure_reason());
 435   }
 436 
 437 #ifndef PRODUCT
 438   if (_flow->has_irreducible_entry()) {
 439     C->set_parsed_irreducible_loop(true);
 440   }
 441 #endif
 442   C->set_has_loops(C->has_loops() || method()->has_loops());
 443 
 444   if (_expected_uses <= 0) {
 445     _prof_factor = 1;
 446   } else {
 447     float prof_total = parse_method->interpreter_invocation_count();
 448     if (prof_total <= _expected_uses) {
 449       _prof_factor = 1;
< prev index next >