1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/src/cpu/sparc/vm/register_definitions_sparc.cpp Sat Dec 01 00:00:00 2007 +0000 1.3 @@ -0,0 +1,175 @@ 1.4 +/* 1.5 + * Copyright 2002-2005 Sun Microsystems, Inc. All Rights Reserved. 1.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.7 + * 1.8 + * This code is free software; you can redistribute it and/or modify it 1.9 + * under the terms of the GNU General Public License version 2 only, as 1.10 + * published by the Free Software Foundation. 1.11 + * 1.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 1.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 1.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 1.15 + * version 2 for more details (a copy is included in the LICENSE file that 1.16 + * accompanied this code). 1.17 + * 1.18 + * You should have received a copy of the GNU General Public License version 1.19 + * 2 along with this work; if not, write to the Free Software Foundation, 1.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 1.21 + * 1.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 1.23 + * CA 95054 USA or visit www.sun.com if you need additional information or 1.24 + * have any questions. 1.25 + * 1.26 + */ 1.27 + 1.28 +// make sure the defines don't screw up the declarations later on in this file 1.29 +#define DONT_USE_REGISTER_DEFINES 1.30 + 1.31 +#include "incls/_precompiled.incl" 1.32 +#include "incls/_register_definitions_sparc.cpp.incl" 1.33 + 1.34 +REGISTER_DEFINITION(Register, noreg); 1.35 + 1.36 +REGISTER_DEFINITION(Register, G0); 1.37 +REGISTER_DEFINITION(Register, G1); 1.38 +REGISTER_DEFINITION(Register, G2); 1.39 +REGISTER_DEFINITION(Register, G3); 1.40 +REGISTER_DEFINITION(Register, G4); 1.41 +REGISTER_DEFINITION(Register, G5); 1.42 +REGISTER_DEFINITION(Register, G6); 1.43 +REGISTER_DEFINITION(Register, G7); 1.44 + 1.45 +REGISTER_DEFINITION(Register, O0); 1.46 +REGISTER_DEFINITION(Register, O1); 1.47 +REGISTER_DEFINITION(Register, O2); 1.48 +REGISTER_DEFINITION(Register, O3); 1.49 +REGISTER_DEFINITION(Register, O4); 1.50 +REGISTER_DEFINITION(Register, O5); 1.51 +REGISTER_DEFINITION(Register, O6); 1.52 +REGISTER_DEFINITION(Register, O7); 1.53 + 1.54 +REGISTER_DEFINITION(Register, L0); 1.55 +REGISTER_DEFINITION(Register, L1); 1.56 +REGISTER_DEFINITION(Register, L2); 1.57 +REGISTER_DEFINITION(Register, L3); 1.58 +REGISTER_DEFINITION(Register, L4); 1.59 +REGISTER_DEFINITION(Register, L5); 1.60 +REGISTER_DEFINITION(Register, L6); 1.61 +REGISTER_DEFINITION(Register, L7); 1.62 + 1.63 +REGISTER_DEFINITION(Register, I0); 1.64 +REGISTER_DEFINITION(Register, I1); 1.65 +REGISTER_DEFINITION(Register, I2); 1.66 +REGISTER_DEFINITION(Register, I3); 1.67 +REGISTER_DEFINITION(Register, I4); 1.68 +REGISTER_DEFINITION(Register, I5); 1.69 +REGISTER_DEFINITION(Register, I6); 1.70 +REGISTER_DEFINITION(Register, I7); 1.71 + 1.72 +REGISTER_DEFINITION(Register, FP); 1.73 +REGISTER_DEFINITION(Register, SP); 1.74 + 1.75 +REGISTER_DEFINITION(FloatRegister, fnoreg); 1.76 +REGISTER_DEFINITION(FloatRegister, F0); 1.77 +REGISTER_DEFINITION(FloatRegister, F1); 1.78 +REGISTER_DEFINITION(FloatRegister, F2); 1.79 +REGISTER_DEFINITION(FloatRegister, F3); 1.80 +REGISTER_DEFINITION(FloatRegister, F4); 1.81 +REGISTER_DEFINITION(FloatRegister, F5); 1.82 +REGISTER_DEFINITION(FloatRegister, F6); 1.83 +REGISTER_DEFINITION(FloatRegister, F7); 1.84 +REGISTER_DEFINITION(FloatRegister, F8); 1.85 +REGISTER_DEFINITION(FloatRegister, F9); 1.86 +REGISTER_DEFINITION(FloatRegister, F10); 1.87 +REGISTER_DEFINITION(FloatRegister, F11); 1.88 +REGISTER_DEFINITION(FloatRegister, F12); 1.89 +REGISTER_DEFINITION(FloatRegister, F13); 1.90 +REGISTER_DEFINITION(FloatRegister, F14); 1.91 +REGISTER_DEFINITION(FloatRegister, F15); 1.92 +REGISTER_DEFINITION(FloatRegister, F16); 1.93 +REGISTER_DEFINITION(FloatRegister, F17); 1.94 +REGISTER_DEFINITION(FloatRegister, F18); 1.95 +REGISTER_DEFINITION(FloatRegister, F19); 1.96 +REGISTER_DEFINITION(FloatRegister, F20); 1.97 +REGISTER_DEFINITION(FloatRegister, F21); 1.98 +REGISTER_DEFINITION(FloatRegister, F22); 1.99 +REGISTER_DEFINITION(FloatRegister, F23); 1.100 +REGISTER_DEFINITION(FloatRegister, F24); 1.101 +REGISTER_DEFINITION(FloatRegister, F25); 1.102 +REGISTER_DEFINITION(FloatRegister, F26); 1.103 +REGISTER_DEFINITION(FloatRegister, F27); 1.104 +REGISTER_DEFINITION(FloatRegister, F28); 1.105 +REGISTER_DEFINITION(FloatRegister, F29); 1.106 +REGISTER_DEFINITION(FloatRegister, F30); 1.107 +REGISTER_DEFINITION(FloatRegister, F31); 1.108 +REGISTER_DEFINITION(FloatRegister, F32); 1.109 +REGISTER_DEFINITION(FloatRegister, F34); 1.110 +REGISTER_DEFINITION(FloatRegister, F36); 1.111 +REGISTER_DEFINITION(FloatRegister, F38); 1.112 +REGISTER_DEFINITION(FloatRegister, F40); 1.113 +REGISTER_DEFINITION(FloatRegister, F42); 1.114 +REGISTER_DEFINITION(FloatRegister, F44); 1.115 +REGISTER_DEFINITION(FloatRegister, F46); 1.116 +REGISTER_DEFINITION(FloatRegister, F48); 1.117 +REGISTER_DEFINITION(FloatRegister, F50); 1.118 +REGISTER_DEFINITION(FloatRegister, F52); 1.119 +REGISTER_DEFINITION(FloatRegister, F54); 1.120 +REGISTER_DEFINITION(FloatRegister, F56); 1.121 +REGISTER_DEFINITION(FloatRegister, F58); 1.122 +REGISTER_DEFINITION(FloatRegister, F60); 1.123 +REGISTER_DEFINITION(FloatRegister, F62); 1.124 + 1.125 + 1.126 +REGISTER_DEFINITION( Register, Otos_i); 1.127 +REGISTER_DEFINITION( Register, Otos_l); 1.128 +REGISTER_DEFINITION( Register, Otos_l1); 1.129 +REGISTER_DEFINITION( Register, Otos_l2); 1.130 +REGISTER_DEFINITION(FloatRegister, Ftos_f); 1.131 +REGISTER_DEFINITION(FloatRegister, Ftos_d); 1.132 +REGISTER_DEFINITION(FloatRegister, Ftos_d1); 1.133 +REGISTER_DEFINITION(FloatRegister, Ftos_d2); 1.134 + 1.135 + 1.136 +REGISTER_DEFINITION(Register, G2_thread); 1.137 +REGISTER_DEFINITION(Register, G5_method); 1.138 +REGISTER_DEFINITION(Register, G5_megamorphic_method); 1.139 +REGISTER_DEFINITION(Register, G5_inline_cache_reg); 1.140 +REGISTER_DEFINITION(Register, Gargs); 1.141 +REGISTER_DEFINITION(Register, L7_thread_cache); 1.142 +REGISTER_DEFINITION(Register, Gframe_size); 1.143 +REGISTER_DEFINITION(Register, G1_scratch); 1.144 +REGISTER_DEFINITION(Register, G3_scratch); 1.145 +REGISTER_DEFINITION(Register, G4_scratch); 1.146 +REGISTER_DEFINITION(Register, Gtemp); 1.147 +REGISTER_DEFINITION(Register, Lentry_args); 1.148 + 1.149 +#ifdef CC_INTERP 1.150 +REGISTER_DEFINITION(Register, Lstate); 1.151 +REGISTER_DEFINITION(Register, L1_scratch); 1.152 +REGISTER_DEFINITION(Register, Lmirror); 1.153 +REGISTER_DEFINITION(Register, L2_scratch); 1.154 +REGISTER_DEFINITION(Register, L3_scratch); 1.155 +REGISTER_DEFINITION(Register, L4_scratch); 1.156 +REGISTER_DEFINITION(Register, Lscratch); 1.157 +REGISTER_DEFINITION(Register, Lscratch2); 1.158 +REGISTER_DEFINITION(Register, L7_scratch); 1.159 +REGISTER_DEFINITION(Register, I5_savedSP); 1.160 +#else // CC_INTERP 1.161 +REGISTER_DEFINITION(Register, Lesp); 1.162 +REGISTER_DEFINITION(Register, Lbcp); 1.163 +REGISTER_DEFINITION(Register, Lmonitors); 1.164 +REGISTER_DEFINITION(Register, Lbyte_code); 1.165 +REGISTER_DEFINITION(Register, Llast_SP); 1.166 +REGISTER_DEFINITION(Register, Lscratch); 1.167 +REGISTER_DEFINITION(Register, Lscratch2); 1.168 +REGISTER_DEFINITION(Register, LcpoolCache); 1.169 +REGISTER_DEFINITION(Register, I5_savedSP); 1.170 +REGISTER_DEFINITION(Register, O5_savedSP); 1.171 +REGISTER_DEFINITION(Register, IdispatchAddress); 1.172 +REGISTER_DEFINITION(Register, ImethodDataPtr); 1.173 +REGISTER_DEFINITION(Register, IdispatchTables); 1.174 +#endif // CC_INTERP 1.175 +REGISTER_DEFINITION(Register, Lmethod); 1.176 +REGISTER_DEFINITION(Register, Llocals); 1.177 +REGISTER_DEFINITION(Register, Oexception); 1.178 +REGISTER_DEFINITION(Register, Oissuing_pc);