src/share/vm/jvmci/jvmciCompiler.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/jvmci

src/share/vm/jvmci/jvmciCompiler.cpp

Print this page
rev 9949 : 8138756: Compiler Control: Print directives in hs_err
Summary: Add directive print in hs_err
Reviewed-by:


 174 /**
 175  * Aborts the VM due to an unexpected exception.
 176  */
 177 void JVMCICompiler::abort_on_pending_exception(Handle exception, const char* message, bool dump_core) {
 178   Thread* THREAD = Thread::current();
 179   CLEAR_PENDING_EXCEPTION;
 180 
 181   java_lang_Throwable::java_printStackTrace(exception, THREAD);
 182 
 183   // Give other aborting threads to also print their stack traces.
 184   // This can be very useful when debugging class initialization
 185   // failures.
 186   assert(THREAD->is_Java_thread(), "compiler threads should be Java threads");
 187   const bool interruptible = true;
 188   os::sleep(THREAD, 200, interruptible);
 189 
 190   vm_abort(dump_core);
 191 }
 192 
 193 // Compilation entry point for methods
 194 void JVMCICompiler::compile_method(ciEnv* env, ciMethod* target, int entry_bci, DirectiveSet* directive) {
 195   ShouldNotReachHere();
 196 }
 197 
 198 bool JVMCICompiler::is_trivial(Method* method) {
 199   if (_bootstrapping) {
 200     return false;
 201   }
 202   return JVMCIRuntime::treat_as_trivial(method);
 203 }
 204 
 205 // Print compilation timers and statistics
 206 void JVMCICompiler::print_timers() {
 207   print_compilation_timers();
 208 }
 209 
 210 // Print compilation timers and statistics
 211 void JVMCICompiler::print_compilation_timers() {
 212   TRACE_jvmci_1("JVMCICompiler::print_timers");
 213   tty->print_cr("       JVMCI code install time:        %6.3f s",    _codeInstallTimer.seconds());
 214 }


 174 /**
 175  * Aborts the VM due to an unexpected exception.
 176  */
 177 void JVMCICompiler::abort_on_pending_exception(Handle exception, const char* message, bool dump_core) {
 178   Thread* THREAD = Thread::current();
 179   CLEAR_PENDING_EXCEPTION;
 180 
 181   java_lang_Throwable::java_printStackTrace(exception, THREAD);
 182 
 183   // Give other aborting threads to also print their stack traces.
 184   // This can be very useful when debugging class initialization
 185   // failures.
 186   assert(THREAD->is_Java_thread(), "compiler threads should be Java threads");
 187   const bool interruptible = true;
 188   os::sleep(THREAD, 200, interruptible);
 189 
 190   vm_abort(dump_core);
 191 }
 192 
 193 // Compilation entry point for methods
 194 void JVMCICompiler::compile_method(ciEnv* env, ciMethod* target, int entry_bci) {
 195   ShouldNotReachHere();
 196 }
 197 
 198 bool JVMCICompiler::is_trivial(Method* method) {
 199   if (_bootstrapping) {
 200     return false;
 201   }
 202   return JVMCIRuntime::treat_as_trivial(method);
 203 }
 204 
 205 // Print compilation timers and statistics
 206 void JVMCICompiler::print_timers() {
 207   print_compilation_timers();
 208 }
 209 
 210 // Print compilation timers and statistics
 211 void JVMCICompiler::print_compilation_timers() {
 212   TRACE_jvmci_1("JVMCICompiler::print_timers");
 213   tty->print_cr("       JVMCI code install time:        %6.3f s",    _codeInstallTimer.seconds());
 214 }
src/share/vm/jvmci/jvmciCompiler.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File