< prev index next >
src/cpu/ppc/vm/interp_masm_ppc_64.cpp
Print this page
*** 282,299 ****
std(first, 0, R15_esp);
std(second, -Interpreter::stackElementSize, R15_esp);
addi(R15_esp, R15_esp, - 2 * Interpreter::stackElementSize );
}
! void InterpreterMacroAssembler::push_l_pop_d(Register l, FloatRegister d) {
std(l, 0, R15_esp);
lfd(d, 0, R15_esp);
}
! void InterpreterMacroAssembler::push_d_pop_l(FloatRegister d, Register l) {
stfd(d, 0, R15_esp);
ld(l, 0, R15_esp);
}
void InterpreterMacroAssembler::push(TosState state) {
switch (state) {
case atos: push_ptr(); break;
--- 282,307 ----
std(first, 0, R15_esp);
std(second, -Interpreter::stackElementSize, R15_esp);
addi(R15_esp, R15_esp, - 2 * Interpreter::stackElementSize );
}
! void InterpreterMacroAssembler::move_l_to_d(Register l, FloatRegister d) {
! if (VM_Version::has_mtfprd()) {
! mtfprd(d, l);
! } else {
std(l, 0, R15_esp);
lfd(d, 0, R15_esp);
+ }
}
! void InterpreterMacroAssembler::move_d_to_l(FloatRegister d, Register l) {
! if (VM_Version::has_mtfprd()) {
! mffprd(l, d);
! } else {
stfd(d, 0, R15_esp);
ld(l, 0, R15_esp);
+ }
}
void InterpreterMacroAssembler::push(TosState state) {
switch (state) {
case atos: push_ptr(); break;
< prev index next >