register_definitions_x86.cpp revision 0:a61af66fc99e
1/* 2 * Copyright 2002-2005 Sun Microsystems, Inc. All Rights Reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 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 7 * published by the Free Software Foundation. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 20 * CA 95054 USA or visit www.sun.com if you need additional information or 21 * have any questions. 22 * 23 */ 24 25// make sure the defines don't screw up the declarations later on in this file 26#define DONT_USE_REGISTER_DEFINES 27 28#include "incls/_precompiled.incl" 29#include "incls/_register_definitions_x86.cpp.incl" 30 31REGISTER_DEFINITION(Register, noreg); 32REGISTER_DEFINITION(Register, rax); 33REGISTER_DEFINITION(Register, rcx); 34REGISTER_DEFINITION(Register, rdx); 35REGISTER_DEFINITION(Register, rbx); 36REGISTER_DEFINITION(Register, rsp); 37REGISTER_DEFINITION(Register, rbp); 38REGISTER_DEFINITION(Register, rsi); 39REGISTER_DEFINITION(Register, rdi); 40#ifdef AMD64 41REGISTER_DEFINITION(Register, r8); 42REGISTER_DEFINITION(Register, r9); 43REGISTER_DEFINITION(Register, r10); 44REGISTER_DEFINITION(Register, r11); 45REGISTER_DEFINITION(Register, r12); 46REGISTER_DEFINITION(Register, r13); 47REGISTER_DEFINITION(Register, r14); 48REGISTER_DEFINITION(Register, r15); 49#endif // AMD64 50 51REGISTER_DEFINITION(XMMRegister, xmm0 ); 52REGISTER_DEFINITION(XMMRegister, xmm1 ); 53REGISTER_DEFINITION(XMMRegister, xmm2 ); 54REGISTER_DEFINITION(XMMRegister, xmm3 ); 55REGISTER_DEFINITION(XMMRegister, xmm4 ); 56REGISTER_DEFINITION(XMMRegister, xmm5 ); 57REGISTER_DEFINITION(XMMRegister, xmm6 ); 58REGISTER_DEFINITION(XMMRegister, xmm7 ); 59#ifdef AMD64 60REGISTER_DEFINITION(XMMRegister, xmm8); 61REGISTER_DEFINITION(XMMRegister, xmm9); 62REGISTER_DEFINITION(XMMRegister, xmm10); 63REGISTER_DEFINITION(XMMRegister, xmm11); 64REGISTER_DEFINITION(XMMRegister, xmm12); 65REGISTER_DEFINITION(XMMRegister, xmm13); 66REGISTER_DEFINITION(XMMRegister, xmm14); 67REGISTER_DEFINITION(XMMRegister, xmm15); 68 69REGISTER_DEFINITION(Register, c_rarg0); 70REGISTER_DEFINITION(Register, c_rarg1); 71REGISTER_DEFINITION(Register, c_rarg2); 72REGISTER_DEFINITION(Register, c_rarg3); 73 74REGISTER_DEFINITION(XMMRegister, c_farg0); 75REGISTER_DEFINITION(XMMRegister, c_farg1); 76REGISTER_DEFINITION(XMMRegister, c_farg2); 77REGISTER_DEFINITION(XMMRegister, c_farg3); 78 79// Non windows OS's have a few more argument registers 80#ifndef _WIN64 81REGISTER_DEFINITION(Register, c_rarg4); 82REGISTER_DEFINITION(Register, c_rarg5); 83 84REGISTER_DEFINITION(XMMRegister, c_farg4); 85REGISTER_DEFINITION(XMMRegister, c_farg5); 86REGISTER_DEFINITION(XMMRegister, c_farg6); 87REGISTER_DEFINITION(XMMRegister, c_farg7); 88#endif /* _WIN64 */ 89 90REGISTER_DEFINITION(Register, j_rarg0); 91REGISTER_DEFINITION(Register, j_rarg1); 92REGISTER_DEFINITION(Register, j_rarg2); 93REGISTER_DEFINITION(Register, j_rarg3); 94REGISTER_DEFINITION(Register, j_rarg4); 95REGISTER_DEFINITION(Register, j_rarg5); 96 97REGISTER_DEFINITION(XMMRegister, j_farg0); 98REGISTER_DEFINITION(XMMRegister, j_farg1); 99REGISTER_DEFINITION(XMMRegister, j_farg2); 100REGISTER_DEFINITION(XMMRegister, j_farg3); 101REGISTER_DEFINITION(XMMRegister, j_farg4); 102REGISTER_DEFINITION(XMMRegister, j_farg5); 103REGISTER_DEFINITION(XMMRegister, j_farg6); 104REGISTER_DEFINITION(XMMRegister, j_farg7); 105 106REGISTER_DEFINITION(Register, rscratch1); 107REGISTER_DEFINITION(Register, rscratch2); 108 109REGISTER_DEFINITION(Register, r15_thread); 110#endif // AMD64 111 112REGISTER_DEFINITION(MMXRegister, mmx0 ); 113REGISTER_DEFINITION(MMXRegister, mmx1 ); 114REGISTER_DEFINITION(MMXRegister, mmx2 ); 115REGISTER_DEFINITION(MMXRegister, mmx3 ); 116REGISTER_DEFINITION(MMXRegister, mmx4 ); 117REGISTER_DEFINITION(MMXRegister, mmx5 ); 118REGISTER_DEFINITION(MMXRegister, mmx6 ); 119REGISTER_DEFINITION(MMXRegister, mmx7 ); 120