comparison src/cpu/x86/vm/interp_masm_x86_32.cpp @ 3336:2e038ad0c1d0

7009361: JSR 292 Invalid value on stack on solaris-sparc with -Xcomp Reviewed-by: kvn, twisti
author never
date Mon, 02 May 2011 18:53:37 -0700
parents 38fea01eb669
children 341a57af9b0a
comparison
equal deleted inserted replaced
3335:49d67a090fe2 3336:2e038ad0c1d0
381 381
382 void InterpreterMacroAssembler::store_ptr(int n, Register val) { 382 void InterpreterMacroAssembler::store_ptr(int n, Register val) {
383 movptr(Address(rsp, Interpreter::expr_offset_in_bytes(n)), val); 383 movptr(Address(rsp, Interpreter::expr_offset_in_bytes(n)), val);
384 } 384 }
385 385
386 void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point) {
387 MacroAssembler::call_VM_leaf_base(entry_point, 0);
388 }
389
390
391 void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1) {
392 push(arg_1);
393 MacroAssembler::call_VM_leaf_base(entry_point, 1);
394 }
395
396
397 void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1, Register arg_2) {
398 push(arg_2);
399 push(arg_1);
400 MacroAssembler::call_VM_leaf_base(entry_point, 2);
401 }
402
403
404 void InterpreterMacroAssembler::super_call_VM_leaf(address entry_point, Register arg_1, Register arg_2, Register arg_3) {
405 push(arg_3);
406 push(arg_2);
407 push(arg_1);
408 MacroAssembler::call_VM_leaf_base(entry_point, 3);
409 }
410
411
412 void InterpreterMacroAssembler::prepare_to_jump_from_interpreted() { 386 void InterpreterMacroAssembler::prepare_to_jump_from_interpreted() {
413 // set sender sp 387 // set sender sp
414 lea(rsi, Address(rsp, wordSize)); 388 lea(rsi, Address(rsp, wordSize));
415 // record last_sp 389 // record last_sp
416 movptr(Address(rbp, frame::interpreter_frame_last_sp_offset * wordSize), rsi); 390 movptr(Address(rbp, frame::interpreter_frame_last_sp_offset * wordSize), rsi);