equal
deleted
inserted
replaced
1420 |
1420 |
1421 nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); |
1421 nmethod* nm = CodeCache::find_nmethod(caller_frame.pc()); |
1422 assert (nm != NULL, "no more nmethod?"); |
1422 assert (nm != NULL, "no more nmethod?"); |
1423 nm->make_not_entrant(); |
1423 nm->make_not_entrant(); |
1424 |
1424 |
1425 methodHandle m(nm->method()); |
1425 methodHandle m(thread, nm->method()); |
1426 MethodData* mdo = m->method_data(); |
1426 MethodData* mdo = m->method_data(); |
1427 |
1427 |
1428 if (mdo == NULL && !HAS_PENDING_EXCEPTION) { |
1428 if (mdo == NULL && !HAS_PENDING_EXCEPTION) { |
1429 // Build an MDO. Ignore errors like OutOfMemory; |
1429 // Build an MDO. Ignore errors like OutOfMemory; |
1430 // that simply means we won't have an MDO to update. |
1430 // that simply means we won't have an MDO to update. |
1441 } |
1441 } |
1442 |
1442 |
1443 if (TracePredicateFailedTraps) { |
1443 if (TracePredicateFailedTraps) { |
1444 stringStream ss1, ss2; |
1444 stringStream ss1, ss2; |
1445 vframeStream vfst(thread); |
1445 vframeStream vfst(thread); |
1446 methodHandle inlinee = methodHandle(vfst.method()); |
1446 Method* inlinee = vfst.method(); |
1447 inlinee->print_short_name(&ss1); |
1447 inlinee->print_short_name(&ss1); |
1448 m->print_short_name(&ss2); |
1448 m->print_short_name(&ss2); |
1449 tty->print_cr("Predicate failed trap in method %s at bci %d inlined in %s at pc " INTPTR_FORMAT, ss1.as_string(), vfst.bci(), ss2.as_string(), p2i(caller_frame.pc())); |
1449 tty->print_cr("Predicate failed trap in method %s at bci %d inlined in %s at pc " INTPTR_FORMAT, ss1.as_string(), vfst.bci(), ss2.as_string(), p2i(caller_frame.pc())); |
1450 } |
1450 } |
1451 |
1451 |