registers.hh (7642:05e445521db9) registers.hh (7649:a6a6177a5ffa)
1/*
1/*
2 * Copyright (c) 2010 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated
11 * unmodified and in its entirety in all distributions of the software,
12 * modified or unmodified, in source code or in binary form.
13 *
2 * Copyright (c) 2007-2008 The Florida State University
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
9 * redistributions in binary form must reproduce the above copyright

--- 44 unchanged lines hidden (view full) ---

54// Constants Related to the number of registers
55const int NumIntArchRegs = NUM_ARCH_INTREGS;
56// The number of single precision floating point registers
57const int NumFloatArchRegs = 64;
58const int NumFloatSpecialRegs = 8;
59
60const int NumIntRegs = NUM_INTREGS;
61const int NumFloatRegs = NumFloatArchRegs + NumFloatSpecialRegs;
14 * Copyright (c) 2007-2008 The Florida State University
15 * All rights reserved.
16 *
17 * Redistribution and use in source and binary forms, with or without
18 * modification, are permitted provided that the following conditions are
19 * met: redistributions of source code must retain the above copyright
20 * notice, this list of conditions and the following disclaimer;
21 * redistributions in binary form must reproduce the above copyright

--- 44 unchanged lines hidden (view full) ---

66// Constants Related to the number of registers
67const int NumIntArchRegs = NUM_ARCH_INTREGS;
68// The number of single precision floating point registers
69const int NumFloatArchRegs = 64;
70const int NumFloatSpecialRegs = 8;
71
72const int NumIntRegs = NUM_INTREGS;
73const int NumFloatRegs = NumFloatArchRegs + NumFloatSpecialRegs;
62
63const int NumMiscRegs = NUM_MISCREGS;
64
74const int NumMiscRegs = NUM_MISCREGS;
75
76const int TotalNumRegs = NumIntRegs + NumFloatRegs + NumMiscRegs;
65
66// semantically meaningful register indices
67const int ReturnValueReg = 0;
68const int ReturnValueReg1 = 1;
69const int ReturnValueReg2 = 2;
70const int ArgumentReg0 = 0;
71const int ArgumentReg1 = 1;
72const int ArgumentReg2 = 2;

--- 7 unchanged lines hidden (view full) ---

80
81const int SyscallNumReg = ReturnValueReg;
82const int SyscallPseudoReturnReg = ReturnValueReg;
83const int SyscallSuccessReg = ReturnValueReg;
84
85// These help enumerate all the registers for dependence tracking.
86const int FP_Base_DepTag = NumIntRegs * (MODE_MAXMODE + 1);
87const int Ctrl_Base_DepTag = FP_Base_DepTag + NumFloatRegs;
77
78// semantically meaningful register indices
79const int ReturnValueReg = 0;
80const int ReturnValueReg1 = 1;
81const int ReturnValueReg2 = 2;
82const int ArgumentReg0 = 0;
83const int ArgumentReg1 = 1;
84const int ArgumentReg2 = 2;

--- 7 unchanged lines hidden (view full) ---

92
93const int SyscallNumReg = ReturnValueReg;
94const int SyscallPseudoReturnReg = ReturnValueReg;
95const int SyscallSuccessReg = ReturnValueReg;
96
97// These help enumerate all the registers for dependence tracking.
98const int FP_Base_DepTag = NumIntRegs * (MODE_MAXMODE + 1);
99const int Ctrl_Base_DepTag = FP_Base_DepTag + NumFloatRegs;
100const int Max_DepTag = Ctrl_Base_DepTag + NumMiscRegs;
88
89typedef union {
90 IntReg intreg;
91 FloatReg fpreg;
92 MiscReg ctrlreg;
93} AnyReg;
94
95} // namespace ArmISA
96
97#endif
101
102typedef union {
103 IntReg intreg;
104 FloatReg fpreg;
105 MiscReg ctrlreg;
106} AnyReg;
107
108} // namespace ArmISA
109
110#endif