comparison src/share/vm/runtime/deoptimization.cpp @ 16535:ada0a7729b6f

Truffle: introduce debug option to print the stack trace when transferring to the interpreter
author Andreas Woess <andreas.woess@jku.at>
date Wed, 16 Jul 2014 15:18:48 +0200
parents 347915b8cea8
children 52b4284cb496
comparison
equal deleted inserted replaced
16534:4aaa97f42b92 16535:ada0a7729b6f
1391 1391
1392 if (trap_bci == SynchronizationEntryBCI) { 1392 if (trap_bci == SynchronizationEntryBCI) {
1393 trap_bci = 0; 1393 trap_bci = 0;
1394 Thread::current()->set_pending_monitorenter(true); 1394 Thread::current()->set_pending_monitorenter(true);
1395 } 1395 }
1396 #endif 1396
1397 if (reason == Deoptimization::Reason_transfer_to_interpreter) {
1398 thread->set_pending_transfer_to_interpreter(true);
1399 }
1400 #endif
1401
1397 Bytecodes::Code trap_bc = trap_method->java_code_at(trap_bci); 1402 Bytecodes::Code trap_bc = trap_method->java_code_at(trap_bci);
1398 1403
1399 if (trap_scope->rethrow_exception()) { 1404 if (trap_scope->rethrow_exception()) {
1400 if (PrintDeoptimizationDetails) { 1405 if (PrintDeoptimizationDetails) {
1401 tty->print_cr("Exception to be rethrown in the interpreter for method %s::%s at bci %d", trap_method->method_holder()->name()->as_C_string(), trap_method->name()->as_C_string(), trap_bci); 1406 tty->print_cr("Exception to be rethrown in the interpreter for method %s::%s at bci %d", trap_method->method_holder()->name()->as_C_string(), trap_method->name()->as_C_string(), trap_bci);
1994 "constraint", 1999 "constraint",
1995 "div0_check", 2000 "div0_check",
1996 "age" GRAAL_ONLY("_or_jsr_mismatch"), 2001 "age" GRAAL_ONLY("_or_jsr_mismatch"),
1997 "predicate", 2002 "predicate",
1998 "loop_limit_check", 2003 "loop_limit_check",
1999 GRAAL_ONLY("aliasing") 2004 #ifdef GRAAL
2005 "aliasing",
2006 "transfer_to_interpreter",
2007 #endif
2000 }; 2008 };
2001 const char* Deoptimization::_trap_action_name[Action_LIMIT] = { 2009 const char* Deoptimization::_trap_action_name[Action_LIMIT] = {
2002 // Note: Keep this in sync. with enum DeoptAction. 2010 // Note: Keep this in sync. with enum DeoptAction.
2003 "none", 2011 "none",
2004 "maybe_recompile", 2012 "maybe_recompile",