src/cpu/x86/vm/interp_masm_x86_64.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/cpu/x86/vm/interp_masm_x86_64.cpp	Fri Apr 29 15:28:59 2011
--- new/src/cpu/x86/vm/interp_masm_x86_64.cpp	Fri Apr 29 15:28:59 2011

*** 379,438 **** --- 379,388 ---- void InterpreterMacroAssembler::store_ptr(int n, Register val) { movptr(Address(rsp, Interpreter::expr_offset_in_bytes(n)), val); } void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point) { MacroAssembler::call_VM_leaf_base(entry_point, 0); } void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1) { if (c_rarg0 != arg_1) { mov(c_rarg0, arg_1); } MacroAssembler::call_VM_leaf_base(entry_point, 1); } void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1, Register arg_2) { assert(c_rarg0 != arg_2, "smashed argument"); assert(c_rarg1 != arg_1, "smashed argument"); if (c_rarg0 != arg_1) { mov(c_rarg0, arg_1); } if (c_rarg1 != arg_2) { mov(c_rarg1, arg_2); } MacroAssembler::call_VM_leaf_base(entry_point, 2); } void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1, Register arg_2, Register arg_3) { assert(c_rarg0 != arg_2, "smashed argument"); assert(c_rarg0 != arg_3, "smashed argument"); assert(c_rarg1 != arg_1, "smashed argument"); assert(c_rarg1 != arg_3, "smashed argument"); assert(c_rarg2 != arg_1, "smashed argument"); assert(c_rarg2 != arg_2, "smashed argument"); if (c_rarg0 != arg_1) { mov(c_rarg0, arg_1); } if (c_rarg1 != arg_2) { mov(c_rarg1, arg_2); } if (c_rarg2 != arg_3) { mov(c_rarg2, arg_3); } MacroAssembler::call_VM_leaf_base(entry_point, 3); } void InterpreterMacroAssembler::prepare_to_jump_from_interpreted() { // set sender sp lea(r13, Address(rsp, wordSize)); // record last_sp movptr(Address(rbp, frame::interpreter_frame_last_sp_offset * wordSize), r13);

src/cpu/x86/vm/interp_masm_x86_64.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File