< prev index next >

src/hotspot/share/opto/compile.cpp

Print this page

 859 #ifndef PRODUCT
 860   if (should_print_igv(1)) {
 861     _igv_printer->print_inlining();
 862   }
 863 #endif
 864 
 865   if (failing())  return;
 866   NOT_PRODUCT( verify_graph_edges(); )
 867 
 868   // Now optimize
 869   Optimize();
 870   if (failing())  return;
 871   NOT_PRODUCT( verify_graph_edges(); )
 872 
 873 #ifndef PRODUCT
 874   if (should_print_ideal()) {
 875     print_ideal_ir("PrintIdeal");
 876   }
 877 #endif
 878 
 879 #ifdef ASSERT
 880   BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2();



 881   bs->verify_gc_barriers(this, BarrierSetC2::BeforeCodeGen);
 882 #endif
 883 
 884   // Dump compilation data to replay it.
 885   if (directive->DumpReplayOption) {
 886     env()->dump_replay_data(_compile_id);
 887   }
 888   if (directive->DumpInlineOption && (ilt() != nullptr)) {
 889     env()->dump_inline_data(_compile_id);
 890   }
 891 
 892   // Now that we know the size of all the monitors we can add a fixed slot
 893   // for the original deopt pc.
 894   int next_slot = fixed_slots() + (sizeof(address) / VMRegImpl::stack_slot_size);
 895   set_fixed_slots(next_slot);
 896 
 897   // Compute when to use implicit null checks. Used by matching trap based
 898   // nodes and NullCheck optimization.
 899   set_allowed_deopt_reasons();
 900 

 859 #ifndef PRODUCT
 860   if (should_print_igv(1)) {
 861     _igv_printer->print_inlining();
 862   }
 863 #endif
 864 
 865   if (failing())  return;
 866   NOT_PRODUCT( verify_graph_edges(); )
 867 
 868   // Now optimize
 869   Optimize();
 870   if (failing())  return;
 871   NOT_PRODUCT( verify_graph_edges(); )
 872 
 873 #ifndef PRODUCT
 874   if (should_print_ideal()) {
 875     print_ideal_ir("PrintIdeal");
 876   }
 877 #endif
 878 

 879   BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2();
 880   bs->final_refinement(this);
 881 
 882 #ifdef ASSERT
 883   bs->verify_gc_barriers(this, BarrierSetC2::BeforeCodeGen);
 884 #endif
 885 
 886   // Dump compilation data to replay it.
 887   if (directive->DumpReplayOption) {
 888     env()->dump_replay_data(_compile_id);
 889   }
 890   if (directive->DumpInlineOption && (ilt() != nullptr)) {
 891     env()->dump_inline_data(_compile_id);
 892   }
 893 
 894   // Now that we know the size of all the monitors we can add a fixed slot
 895   // for the original deopt pc.
 896   int next_slot = fixed_slots() + (sizeof(address) / VMRegImpl::stack_slot_size);
 897   set_fixed_slots(next_slot);
 898 
 899   // Compute when to use implicit null checks. Used by matching trap based
 900   // nodes and NullCheck optimization.
 901   set_allowed_deopt_reasons();
 902 
< prev index next >