1201 GUARDED_VM_ENTRY(return _factory->get_unloaded_object_constant();)
1202 }
1203
1204 // ------------------------------------------------------------------
1205 // ciEnv::dump_replay_data*
1206
1207 // Don't change thread state and acquire any locks.
1208 // Safe to call from VM error reporter.
1209
1210 void ciEnv::dump_compile_data(outputStream* out) {
1211 CompileTask* task = this->task();
1212 Method* method = task->method();
1213 int entry_bci = task->osr_bci();
1214 int comp_level = task->comp_level();
1215 out->print("compile %s %s %s %d %d",
1216 method->klass_name()->as_quoted_ascii(),
1217 method->name()->as_quoted_ascii(),
1218 method->signature()->as_quoted_ascii(),
1219 entry_bci, comp_level);
1220 if (compiler_data() != NULL) {
1221 if (is_c2_compile(comp_level)) { // C2 or Shark
1222 #ifdef COMPILER2
1223 // Dump C2 inlining data.
1224 ((Compile*)compiler_data())->dump_inline_data(out);
1225 #endif
1226 } else if (is_c1_compile(comp_level)) { // C1
1227 #ifdef COMPILER1
1228 // Dump C1 inlining data.
1229 ((Compilation*)compiler_data())->dump_inline_data(out);
1230 #endif
1231 }
1232 }
1233 out->cr();
1234 }
1235
1236 void ciEnv::dump_replay_data_unsafe(outputStream* out) {
1237 ResourceMark rm;
1238 #if INCLUDE_JVMTI
1239 out->print_cr("JvmtiExport can_access_local_variables %d", _jvmti_can_access_local_variables);
1240 out->print_cr("JvmtiExport can_hotswap_or_post_breakpoint %d", _jvmti_can_hotswap_or_post_breakpoint);
1241 out->print_cr("JvmtiExport can_post_on_exceptions %d", _jvmti_can_post_on_exceptions);
|
1201 GUARDED_VM_ENTRY(return _factory->get_unloaded_object_constant();)
1202 }
1203
1204 // ------------------------------------------------------------------
1205 // ciEnv::dump_replay_data*
1206
1207 // Don't change thread state and acquire any locks.
1208 // Safe to call from VM error reporter.
1209
1210 void ciEnv::dump_compile_data(outputStream* out) {
1211 CompileTask* task = this->task();
1212 Method* method = task->method();
1213 int entry_bci = task->osr_bci();
1214 int comp_level = task->comp_level();
1215 out->print("compile %s %s %s %d %d",
1216 method->klass_name()->as_quoted_ascii(),
1217 method->name()->as_quoted_ascii(),
1218 method->signature()->as_quoted_ascii(),
1219 entry_bci, comp_level);
1220 if (compiler_data() != NULL) {
1221 if (is_c2_compile(comp_level)) { // C2
1222 #ifdef COMPILER2
1223 // Dump C2 inlining data.
1224 ((Compile*)compiler_data())->dump_inline_data(out);
1225 #endif
1226 } else if (is_c1_compile(comp_level)) { // C1
1227 #ifdef COMPILER1
1228 // Dump C1 inlining data.
1229 ((Compilation*)compiler_data())->dump_inline_data(out);
1230 #endif
1231 }
1232 }
1233 out->cr();
1234 }
1235
1236 void ciEnv::dump_replay_data_unsafe(outputStream* out) {
1237 ResourceMark rm;
1238 #if INCLUDE_JVMTI
1239 out->print_cr("JvmtiExport can_access_local_variables %d", _jvmti_can_access_local_variables);
1240 out->print_cr("JvmtiExport can_hotswap_or_post_breakpoint %d", _jvmti_can_hotswap_or_post_breakpoint);
1241 out->print_cr("JvmtiExport can_post_on_exceptions %d", _jvmti_can_post_on_exceptions);
|