1.1 --- a/src/cpu/x86/vm/c1_FrameMap_x86.hpp Tue Nov 23 13:22:55 2010 -0800 1.2 +++ b/src/cpu/x86/vm/c1_FrameMap_x86.hpp Tue Nov 30 23:23:40 2010 -0800 1.3 @@ -130,4 +130,15 @@ 1.4 return _caller_save_xmm_regs[i]; 1.5 } 1.6 1.7 + static int adjust_reg_range(int range) { 1.8 + // Reduce the number of available regs (to free r12) in case of compressed oops 1.9 + if (UseCompressedOops) return range - 1; 1.10 + return range; 1.11 + } 1.12 + 1.13 + static int nof_caller_save_cpu_regs() { return adjust_reg_range(pd_nof_caller_save_cpu_regs_frame_map); } 1.14 + static int last_cpu_reg() { return adjust_reg_range(pd_last_cpu_reg); } 1.15 + static int last_byte_reg() { return adjust_reg_range(pd_last_byte_reg); } 1.16 + 1.17 #endif // CPU_X86_VM_C1_FRAMEMAP_X86_HPP 1.18 +