848 set_has_unsafe_access(false); |
848 set_has_unsafe_access(false); |
849 Copy::zero_to_bytes(_trap_hist, sizeof(_trap_hist)); |
849 Copy::zero_to_bytes(_trap_hist, sizeof(_trap_hist)); |
850 set_decompile_count(0); |
850 set_decompile_count(0); |
851 |
851 |
852 set_do_freq_based_layout(BlockLayoutByFrequency || method_has_option("BlockLayoutByFrequency")); |
852 set_do_freq_based_layout(BlockLayoutByFrequency || method_has_option("BlockLayoutByFrequency")); |
853 // Compilation level related initialization |
853 set_num_loop_opts(LoopOptsCount); |
854 if (env()->comp_level() == CompLevel_fast_compile) { |
854 set_do_inlining(Inline); |
855 set_num_loop_opts(Tier1LoopOptsCount); |
855 set_max_inline_size(MaxInlineSize); |
856 set_do_inlining(Tier1Inline != 0); |
856 set_freq_inline_size(FreqInlineSize); |
857 set_max_inline_size(Tier1MaxInlineSize); |
857 set_do_scheduling(OptoScheduling); |
858 set_freq_inline_size(Tier1FreqInlineSize); |
858 set_do_count_invocations(false); |
859 set_do_scheduling(false); |
859 set_do_method_data_update(false); |
860 set_do_count_invocations(Tier1CountInvocations); |
|
861 set_do_method_data_update(Tier1UpdateMethodData); |
|
862 } else { |
|
863 assert(env()->comp_level() == CompLevel_full_optimization, "unknown comp level"); |
|
864 set_num_loop_opts(LoopOptsCount); |
|
865 set_do_inlining(Inline); |
|
866 set_max_inline_size(MaxInlineSize); |
|
867 set_freq_inline_size(FreqInlineSize); |
|
868 set_do_scheduling(OptoScheduling); |
|
869 set_do_count_invocations(false); |
|
870 set_do_method_data_update(false); |
|
871 } |
|
872 |
860 |
873 if (debug_info()->recording_non_safepoints()) { |
861 if (debug_info()->recording_non_safepoints()) { |
874 set_node_note_array(new(comp_arena()) GrowableArray<Node_Notes*> |
862 set_node_note_array(new(comp_arena()) GrowableArray<Node_Notes*> |
875 (comp_arena(), 8, 0, NULL)); |
863 (comp_arena(), 8, 0, NULL)); |
876 set_default_node_notes(Node_Notes::make(this)); |
864 set_default_node_notes(Node_Notes::make(this)); |