src/share/vm/ci/ciMethod.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 8056964 Sdiff src/share/vm/ci

src/share/vm/ci/ciMethod.cpp

Print this page




1085 // Should the compiler insert a breakpoint into the generated code
1086 // method?
1087 bool ciMethod::break_at_execute() {
1088   check_is_loaded();
1089   VM_ENTRY_MARK;
1090   methodHandle mh(THREAD, get_Method());
1091   return CompilerOracle::should_break_at(mh);
1092 }
1093 
1094 // ------------------------------------------------------------------
1095 // ciMethod::has_option
1096 //
1097 bool ciMethod::has_option(const char* option) {
1098   check_is_loaded();
1099   VM_ENTRY_MARK;
1100   methodHandle mh(THREAD, get_Method());
1101   return CompilerOracle::has_option_string(mh, option);
1102 }
1103 
1104 // ------------------------------------------------------------------
















1105 // ciMethod::can_be_compiled
1106 //
1107 // Have previous compilations of this method succeeded?
1108 bool ciMethod::can_be_compiled() {
1109   check_is_loaded();
1110   ciEnv* env = CURRENT_ENV;
1111   if (is_c1_compile(env->comp_level())) {
1112     return _is_c1_compilable;
1113   }
1114   return _is_c2_compilable;
1115 }
1116 
1117 // ------------------------------------------------------------------
1118 // ciMethod::set_not_compilable
1119 //
1120 // Tell the VM that this method cannot be compiled at all.
1121 void ciMethod::set_not_compilable(const char* reason) {
1122   check_is_loaded();
1123   VM_ENTRY_MARK;
1124   ciEnv* env = CURRENT_ENV;




1085 // Should the compiler insert a breakpoint into the generated code
1086 // method?
1087 bool ciMethod::break_at_execute() {
1088   check_is_loaded();
1089   VM_ENTRY_MARK;
1090   methodHandle mh(THREAD, get_Method());
1091   return CompilerOracle::should_break_at(mh);
1092 }
1093 
1094 // ------------------------------------------------------------------
1095 // ciMethod::has_option
1096 //
1097 bool ciMethod::has_option(const char* option) {
1098   check_is_loaded();
1099   VM_ENTRY_MARK;
1100   methodHandle mh(THREAD, get_Method());
1101   return CompilerOracle::has_option_string(mh, option);
1102 }
1103 
1104 // ------------------------------------------------------------------
1105 // ciMethod::has_option_value
1106 //
1107 template<typename T>
1108 bool ciMethod::has_option_value(const char* option, T& value) {
1109   check_is_loaded();
1110   VM_ENTRY_MARK;
1111   methodHandle mh(THREAD, get_Method());
1112   return CompilerOracle::has_option_value(mh, option, value);
1113 }
1114 // Explicit instantiation for all OptionTypes supported.
1115 template bool ciMethod::has_option_value<intx>(const char* option, intx& value);
1116 template bool ciMethod::has_option_value<uintx>(const char* option, uintx& value);
1117 template bool ciMethod::has_option_value<bool>(const char* option, bool& value);
1118 template bool ciMethod::has_option_value<ccstr>(const char* option, ccstr& value);
1119 
1120 // ------------------------------------------------------------------
1121 // ciMethod::can_be_compiled
1122 //
1123 // Have previous compilations of this method succeeded?
1124 bool ciMethod::can_be_compiled() {
1125   check_is_loaded();
1126   ciEnv* env = CURRENT_ENV;
1127   if (is_c1_compile(env->comp_level())) {
1128     return _is_c1_compilable;
1129   }
1130   return _is_c2_compilable;
1131 }
1132 
1133 // ------------------------------------------------------------------
1134 // ciMethod::set_not_compilable
1135 //
1136 // Tell the VM that this method cannot be compiled at all.
1137 void ciMethod::set_not_compilable(const char* reason) {
1138   check_is_loaded();
1139   VM_ENTRY_MARK;
1140   ciEnv* env = CURRENT_ENV;


src/share/vm/ci/ciMethod.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File