8209415: Fix JVMTI test failure HS202
Fix test for static method in exception throw handler Reviewed-by: adinn
This commit is contained in:
parent
8c361a3e74
commit
53e8899129
@ -1902,8 +1902,8 @@ void TemplateInterpreterGenerator::generate_throw_exception() {
|
||||
Label L_done;
|
||||
|
||||
__ ldrb(rscratch1, Address(rbcp, 0));
|
||||
__ cmpw(r1, Bytecodes::_invokestatic);
|
||||
__ br(Assembler::EQ, L_done);
|
||||
__ cmpw(rscratch1, Bytecodes::_invokestatic);
|
||||
__ br(Assembler::NE, L_done);
|
||||
|
||||
// The member name argument must be restored if _invokestatic is re-executed after a PopFrame call.
|
||||
// Detect such a case in the InterpreterRuntime function and return the member name argument, or NULL.
|
||||
@ -1938,7 +1938,6 @@ void TemplateInterpreterGenerator::generate_throw_exception() {
|
||||
// remove the activation (without doing throws on illegalMonitorExceptions)
|
||||
__ remove_activation(vtos, false, true, false);
|
||||
// restore exception
|
||||
// restore exception
|
||||
__ get_vm_result(r0, rthread);
|
||||
|
||||
// In between activations - previous activation type unknown yet
|
||||
@ -1947,9 +1946,8 @@ void TemplateInterpreterGenerator::generate_throw_exception() {
|
||||
//
|
||||
// r0: exception
|
||||
// lr: return address/pc that threw exception
|
||||
// rsp: expression stack of caller
|
||||
// esp: expression stack of caller
|
||||
// rfp: fp of caller
|
||||
// FIXME: There's no point saving LR here because VM calls don't trash it
|
||||
__ stp(r0, lr, Address(__ pre(sp, -2 * wordSize))); // save exception & return address
|
||||
__ super_call_VM_leaf(CAST_FROM_FN_PTR(address,
|
||||
SharedRuntime::exception_handler_for_return_address),
|
||||
|
Loading…
x
Reference in New Issue
Block a user