comparison src/cpu/x86/vm/c1_FrameMap_x86.hpp @ 6948:e522a00b91aa

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
author Doug Simon <doug.simon@oracle.com>
date Mon, 12 Nov 2012 23:14:12 +0100
parents d804e148cff8
children 7944aba7ba41
comparison
equal deleted inserted replaced
6711:ae13cc658b80 6948:e522a00b91aa
1 /* 1 /*
2 * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
71 static LIR_Opr rdi_oop_opr; 71 static LIR_Opr rdi_oop_opr;
72 static LIR_Opr rbx_oop_opr; 72 static LIR_Opr rbx_oop_opr;
73 static LIR_Opr rax_oop_opr; 73 static LIR_Opr rax_oop_opr;
74 static LIR_Opr rdx_oop_opr; 74 static LIR_Opr rdx_oop_opr;
75 static LIR_Opr rcx_oop_opr; 75 static LIR_Opr rcx_oop_opr;
76
77 static LIR_Opr rsi_metadata_opr;
78 static LIR_Opr rdi_metadata_opr;
79 static LIR_Opr rbx_metadata_opr;
80 static LIR_Opr rax_metadata_opr;
81 static LIR_Opr rdx_metadata_opr;
82 static LIR_Opr rcx_metadata_opr;
83
76 #ifdef _LP64 84 #ifdef _LP64
77 85
78 static LIR_Opr r8_opr; 86 static LIR_Opr r8_opr;
79 static LIR_Opr r9_opr; 87 static LIR_Opr r9_opr;
80 static LIR_Opr r10_opr; 88 static LIR_Opr r10_opr;
89 97
90 static LIR_Opr r11_oop_opr; 98 static LIR_Opr r11_oop_opr;
91 static LIR_Opr r12_oop_opr; 99 static LIR_Opr r12_oop_opr;
92 static LIR_Opr r13_oop_opr; 100 static LIR_Opr r13_oop_opr;
93 static LIR_Opr r14_oop_opr; 101 static LIR_Opr r14_oop_opr;
102
103 static LIR_Opr r8_metadata_opr;
104 static LIR_Opr r9_metadata_opr;
105
106 static LIR_Opr r11_metadata_opr;
107 static LIR_Opr r12_metadata_opr;
108 static LIR_Opr r13_metadata_opr;
109 static LIR_Opr r14_metadata_opr;
94 110
95 #endif // _LP64 111 #endif // _LP64
96 112
97 static LIR_Opr long0_opr; 113 static LIR_Opr long0_opr;
98 static LIR_Opr long1_opr; 114 static LIR_Opr long1_opr;
130 return _caller_save_xmm_regs[i]; 146 return _caller_save_xmm_regs[i];
131 } 147 }
132 148
133 static int adjust_reg_range(int range) { 149 static int adjust_reg_range(int range) {
134 // Reduce the number of available regs (to free r12) in case of compressed oops 150 // Reduce the number of available regs (to free r12) in case of compressed oops
135 if (UseCompressedOops) return range - 1; 151 if (UseCompressedOops || UseCompressedKlassPointers) return range - 1;
136 return range; 152 return range;
137 } 153 }
138 154
139 static int nof_caller_save_cpu_regs() { return adjust_reg_range(pd_nof_caller_save_cpu_regs_frame_map); } 155 static int nof_caller_save_cpu_regs() { return adjust_reg_range(pd_nof_caller_save_cpu_regs_frame_map); }
140 static int last_cpu_reg() { return adjust_reg_range(pd_last_cpu_reg); } 156 static int last_cpu_reg() { return adjust_reg_range(pd_last_cpu_reg); }