src/cpu/x86/vm/c1_FrameMap_x86.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/cpu/x86/vm/c1_FrameMap_x86.cpp
src/cpu/x86/vm/c1_FrameMap_x86.cpp
Print this page
*** 57,75 ****
} else {
opr = as_opr(reg);
}
} else if (r_1->is_FloatRegister()) {
assert(type == T_DOUBLE || type == T_FLOAT, "wrong type");
! int num = r_1->as_FloatRegister()->encoding();
if (type == T_FLOAT) {
opr = LIR_OprFact::single_fpu(num);
} else {
opr = LIR_OprFact::double_fpu(num);
}
} else if (r_1->is_XMMRegister()) {
assert(type == T_DOUBLE || type == T_FLOAT, "wrong type");
! int num = r_1->as_XMMRegister()->encoding();
if (type == T_FLOAT) {
opr = LIR_OprFact::single_xmm(num);
} else {
opr = LIR_OprFact::double_xmm(num);
}
--- 57,75 ----
} else {
opr = as_opr(reg);
}
} else if (r_1->is_FloatRegister()) {
assert(type == T_DOUBLE || type == T_FLOAT, "wrong type");
! int num = r_1->as_FloatRegister().encoding();
if (type == T_FLOAT) {
opr = LIR_OprFact::single_fpu(num);
} else {
opr = LIR_OprFact::double_fpu(num);
}
} else if (r_1->is_XMMRegister()) {
assert(type == T_DOUBLE || type == T_FLOAT, "wrong type");
! int num = r_1->as_XMMRegister().encoding();
if (type == T_FLOAT) {
opr = LIR_OprFact::single_xmm(num);
} else {
opr = LIR_OprFact::double_xmm(num);
}
*** 142,152 ****
LIR_Opr FrameMap::_caller_save_cpu_regs[] = { 0, };
LIR_Opr FrameMap::_caller_save_fpu_regs[] = { 0, };
LIR_Opr FrameMap::_caller_save_xmm_regs[] = { 0, };
! XMMRegister FrameMap::_xmm_regs [] = { 0, };
XMMRegister FrameMap::nr2xmmreg(int rnr) {
assert(_init_done, "tables not initialized");
return _xmm_regs[rnr];
}
--- 142,152 ----
LIR_Opr FrameMap::_caller_save_cpu_regs[] = { 0, };
LIR_Opr FrameMap::_caller_save_fpu_regs[] = { 0, };
LIR_Opr FrameMap::_caller_save_xmm_regs[] = { 0, };
! XMMRegister FrameMap::_xmm_regs[];
XMMRegister FrameMap::nr2xmmreg(int rnr) {
assert(_init_done, "tables not initialized");
return _xmm_regs[rnr];
}
*** 331,344 ****
// ^ ^ sp() ( x x indicate link
// | | and return addr)
// arguments non-argument locals
! VMReg FrameMap::fpu_regname (int n) {
// Return the OptoReg name for the fpu stack slot "n"
// A spilled fpu stack slot comprises to two single-word OptoReg's.
! return as_FloatRegister(n)->as_VMReg();
}
LIR_Opr FrameMap::stack_pointer() {
return FrameMap::rsp_opr;
}
--- 331,344 ----
// ^ ^ sp() ( x x indicate link
// | | and return addr)
// arguments non-argument locals
! VMReg FrameMap::fpu_regname(int n) {
// Return the OptoReg name for the fpu stack slot "n"
// A spilled fpu stack slot comprises to two single-word OptoReg's.
! return as_FloatRegister(n).as_VMReg();
}
LIR_Opr FrameMap::stack_pointer() {
return FrameMap::rsp_opr;
}
src/cpu/x86/vm/c1_FrameMap_x86.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File