comparison src/cpu/x86/vm/methodHandles_x86.cpp @ 3848:a19c671188cb

7075623: 6990212 broke raiseException in 64 bit Reviewed-by: kvn, twisti
author never
date Mon, 08 Aug 2011 13:19:46 -0700
parents 341a57af9b0a
children c26de9aef2ed
comparison
equal deleted inserted replaced
3847:a3142bdb6707 3848:a19c671188cb
1190 __ movptr(rbx_method, ExternalAddress((address) &_raise_exception_method)); 1190 __ movptr(rbx_method, ExternalAddress((address) &_raise_exception_method));
1191 1191
1192 const int jobject_oop_offset = 0; 1192 const int jobject_oop_offset = 0;
1193 __ movptr(rbx_method, Address(rbx_method, jobject_oop_offset)); // dereference the jobject 1193 __ movptr(rbx_method, Address(rbx_method, jobject_oop_offset)); // dereference the jobject
1194 1194
1195 __ movptr(rsi, rsp); 1195 __ movptr(saved_last_sp, rsp);
1196 __ subptr(rsp, 3 * wordSize); 1196 __ subptr(rsp, 3 * wordSize);
1197 __ push(rax_pc); // restore caller PC 1197 __ push(rax_pc); // restore caller PC
1198 1198
1199 __ movptr(__ argument_address(constant(2)), rarg0_code); 1199 __ movl (__ argument_address(constant(2)), rarg0_code);
1200 __ movptr(__ argument_address(constant(1)), rarg1_actual); 1200 __ movptr(__ argument_address(constant(1)), rarg1_actual);
1201 __ movptr(__ argument_address(constant(0)), rarg2_required); 1201 __ movptr(__ argument_address(constant(0)), rarg2_required);
1202 jump_from_method_handle(_masm, rbx_method, rax); 1202 jump_from_method_handle(_masm, rbx_method, rax);
1203 } 1203 }
1204 break; 1204 break;