Mon, 08 Aug 2011 13:19:46 -0700
7075623: 6990212 broke raiseException in 64 bit
Reviewed-by: kvn, twisti
src/cpu/sparc/vm/methodHandles_sparc.cpp | file | annotate | diff | comparison | revisions | |
src/cpu/x86/vm/methodHandles_x86.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/cpu/sparc/vm/methodHandles_sparc.cpp Mon Aug 08 05:49:04 2011 -0700 1.2 +++ b/src/cpu/sparc/vm/methodHandles_sparc.cpp Mon Aug 08 13:19:46 2011 -0700 1.3 @@ -1126,7 +1126,7 @@ 1.4 1.5 adjust_SP_and_Gargs_down_by_slots(_masm, 3, noreg, noreg); 1.6 1.7 - __ st_ptr(O0_code, __ argument_address(constant(2), noreg, 0)); 1.8 + __ st (O0_code, __ argument_address(constant(2), noreg, 0)); 1.9 __ st_ptr(O1_actual, __ argument_address(constant(1), noreg, 0)); 1.10 __ st_ptr(O2_required, __ argument_address(constant(0), noreg, 0)); 1.11 jump_from_method_handle(_masm, G5_method, O1_scratch, O2_scratch);
2.1 --- a/src/cpu/x86/vm/methodHandles_x86.cpp Mon Aug 08 05:49:04 2011 -0700 2.2 +++ b/src/cpu/x86/vm/methodHandles_x86.cpp Mon Aug 08 13:19:46 2011 -0700 2.3 @@ -1192,11 +1192,11 @@ 2.4 const int jobject_oop_offset = 0; 2.5 __ movptr(rbx_method, Address(rbx_method, jobject_oop_offset)); // dereference the jobject 2.6 2.7 - __ movptr(rsi, rsp); 2.8 + __ movptr(saved_last_sp, rsp); 2.9 __ subptr(rsp, 3 * wordSize); 2.10 __ push(rax_pc); // restore caller PC 2.11 2.12 - __ movptr(__ argument_address(constant(2)), rarg0_code); 2.13 + __ movl (__ argument_address(constant(2)), rarg0_code); 2.14 __ movptr(__ argument_address(constant(1)), rarg1_actual); 2.15 __ movptr(__ argument_address(constant(0)), rarg2_required); 2.16 jump_from_method_handle(_masm, rbx_method, rax);