Mercurial > hg > graal-jvmci-8
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); |