comparison src/share/vm/ci/ciEnv.cpp @ 12865:5cc2d82aa82a

8024943: ciReplay: fails to dump replay data during safepointing Reviewed-by: kvn, twisti
author vlivanov
date Mon, 07 Oct 2013 14:11:49 +0400
parents f98f5d48f511
children b8860472c377
comparison
equal deleted inserted replaced
12864:bf8a21c3ab3b 12865:5cc2d82aa82a
1152 1152
1153 ciInstance* ciEnv::unloaded_ciinstance() { 1153 ciInstance* ciEnv::unloaded_ciinstance() {
1154 GUARDED_VM_ENTRY(return _factory->get_unloaded_object_constant();) 1154 GUARDED_VM_ENTRY(return _factory->get_unloaded_object_constant();)
1155 } 1155 }
1156 1156
1157 void ciEnv::dump_replay_data(outputStream* out) { 1157 // ------------------------------------------------------------------
1158 VM_ENTRY_MARK; 1158 // ciEnv::dump_replay_data*
1159 MutexLocker ml(Compile_lock); 1159
1160 // Don't change thread state and acquire any locks.
1161 // Safe to call from VM error reporter.
1162 void ciEnv::dump_replay_data_unsafe(outputStream* out) {
1160 ResourceMark rm; 1163 ResourceMark rm;
1161 #if INCLUDE_JVMTI 1164 #if INCLUDE_JVMTI
1162 out->print_cr("JvmtiExport can_access_local_variables %d", _jvmti_can_access_local_variables); 1165 out->print_cr("JvmtiExport can_access_local_variables %d", _jvmti_can_access_local_variables);
1163 out->print_cr("JvmtiExport can_hotswap_or_post_breakpoint %d", _jvmti_can_hotswap_or_post_breakpoint); 1166 out->print_cr("JvmtiExport can_hotswap_or_post_breakpoint %d", _jvmti_can_hotswap_or_post_breakpoint);
1164 out->print_cr("JvmtiExport can_post_on_exceptions %d", _jvmti_can_post_on_exceptions); 1167 out->print_cr("JvmtiExport can_post_on_exceptions %d", _jvmti_can_post_on_exceptions);
1179 method->name()->as_quoted_ascii(), 1182 method->name()->as_quoted_ascii(),
1180 method->signature()->as_quoted_ascii(), 1183 method->signature()->as_quoted_ascii(),
1181 entry_bci, comp_level); 1184 entry_bci, comp_level);
1182 out->flush(); 1185 out->flush();
1183 } 1186 }
1187
1188 void ciEnv::dump_replay_data(outputStream* out) {
1189 GUARDED_VM_ENTRY(
1190 MutexLocker ml(Compile_lock);
1191 dump_replay_data_unsafe(out);
1192 )
1193 }