comparison src/cpu/x86/vm/stubGenerator_x86_32.cpp @ 2321:1b4e6a5d98e0

7012914: JSR 292 MethodHandlesTest C1: frame::verify_return_pc(return_address) failed: must be a return pc Reviewed-by: never, bdelsart
author twisti
date Mon, 28 Feb 2011 06:07:12 -0800
parents d89a22843c62
children 0ac769a57c64
comparison
equal deleted inserted replaced
2320:41d4973cf100 2321:1b4e6a5d98e0
436 } 436 }
437 #endif 437 #endif
438 438
439 // Verify that there is really a valid exception in RAX. 439 // Verify that there is really a valid exception in RAX.
440 __ verify_oop(exception_oop); 440 __ verify_oop(exception_oop);
441
442 // Restore SP from BP if the exception PC is a MethodHandle call site.
443 __ cmpl(Address(thread, JavaThread::is_method_handle_return_offset()), 0);
444 __ cmovptr(Assembler::notEqual, rsp, rbp);
445 441
446 // continue at exception handler (return address removed) 442 // continue at exception handler (return address removed)
447 // rax: exception 443 // rax: exception
448 // rbx: exception handler 444 // rbx: exception handler
449 // rdx: throwing pc 445 // rdx: throwing pc