Update copyright to LGPL on all files
[dyninst.git] / common / h / auxvtypes.h
1 /*
2  * Copyright (c) 1996-2009 Barton P. Miller
3  * 
4  * We provide the Paradyn Parallel Performance Tools (below
5  * described as "Paradyn") on an AS IS basis, and do not warrant its
6  * validity or performance.  We reserve the right to update, modify,
7  * or discontinue this software at any time.  We shall have no
8  * obligation to supply such updates or modifications or any other
9  * form of support to you.
10  * 
11  * By your use of Paradyn, you understand and agree that we (or any
12  * other person or entity with proprietary rights in Paradyn) are
13  * under no obligation to provide either maintenance services,
14  * update services, notices of latent defects, or correction of
15  * defects for Paradyn.
16  * 
17  * This library is free software; you can redistribute it and/or
18  * modify it under the terms of the GNU Lesser General Public
19  * License as published by the Free Software Foundation; either
20  * version 2.1 of the License, or (at your option) any later version.
21  * 
22  * This library is distributed in the hope that it will be useful,
23  * but WITHOUT ANY WARRANTY; without even the implied warranty of
24  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
25  * Lesser General Public License for more details.
26  * 
27  * You should have received a copy of the GNU Lesser General Public
28  * License along with this library; if not, write to the Free Software
29  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
30  */
31 #ifndef AUXV_TYPES_H
32 #define AUXV_TYPES_H
33
34 // These are not defined on some systems, so this header should help.  This 
35 // also defines a method to convert auxv types to strings, for more 
36 // readable debug output.
37
38 // --- Standard auxv values from elf.h ---
39 #ifndef AT_NULL
40 #define AT_NULL 0
41 #endif  // AT_NULL
42
43 #ifndef AT_IGNORE
44 #define AT_IGNORE 1
45 #endif  // AT_IGNORE
46
47 #ifndef AT_EXECFD
48 #define AT_EXECFD 2
49 #endif  // AT_EXECFD
50
51 #ifndef AT_PHDR
52 #define AT_PHDR 3
53 #endif  // AT_PHDR
54
55 #ifndef AT_PHENT
56 #define AT_PHENT 4
57 #endif  // AT_PHENT
58
59 #ifndef AT_PHNUM
60 #define AT_PHNUM 5
61 #endif  // AT_PHNUM
62
63 #ifndef AT_PAGESZ
64 #define AT_PAGESZ 6
65 #endif  // AT_PAGESZ
66
67 #ifndef AT_BASE
68 #define AT_BASE 7
69 #endif  // AT_BASE
70
71 #ifndef AT_FLAGS
72 #define AT_FLAGS 8
73 #endif  // AT_FLAGS
74
75 #ifndef AT_ENTRY
76 #define AT_ENTRY 9
77 #endif  // AT_ENTRY
78
79 #ifndef AT_NOTELF
80 #define AT_NOTELF 10
81 #endif  // AT_NOTELF
82
83 #ifndef AT_UID
84 #define AT_UID  11
85 #endif  // AT_UID
86
87 #ifndef AT_EUID
88 #define AT_EUID 12
89 #endif  // AT_EUID
90
91 #ifndef AT_GID
92 #define AT_GID  13
93 #endif  // AT_GID
94
95 #ifndef AT_EGID
96 #define AT_EGID 14
97 #endif  // AT_EGID
98
99 #ifndef AT_CLKTCK
100 #define AT_CLKTCK 17
101 #endif  // AT_CLKTCK
102
103 #ifndef AT_PLATFORM
104 #define AT_PLATFORM 15
105 #endif  // AT_PLATFORM
106
107 #ifndef AT_HWCAP
108 #define AT_HWCAP 16     
109 #endif  // AT_HWCAP
110
111 #ifndef AT_FPUCW
112 #define AT_FPUCW 18
113 #endif  // AT_FPUCW
114
115 #ifndef AT_DCACHEBSIZE
116 #define AT_DCACHEBSIZE 19
117 #endif  // AT_DCACHEBSIZE
118
119 #ifndef AT_ICACHEBSIZE
120 #define AT_ICACHEBSIZE 20
121 #endif  // AT_ICACHEBSIZE
122
123 #ifndef AT_UCACHEBSIZE
124 #define AT_UCACHEBSIZE 21
125 #endif  // AT_UCACHEBSIZE
126
127 #ifndef AT_IGNOREPPC
128 #define AT_IGNOREPPC 22
129 #endif  // AT_IGNOREPPC
130
131 #ifndef AT_SECURE
132 #define AT_SECURE 23
133 #endif  // AT_SECURE
134
135 #ifndef AT_SYSINFO
136 #define AT_SYSINFO 32
137 #endif  // AT_SYSINFO
138
139 #ifndef AT_SYSINFO
140 #define AT_SYSINFO_EHDR 33
141 #endif  // AT_SYSINFO
142
143 #ifndef AT_L1I
144 #define AT_L1I_CACHESHAPE 34
145 #endif  // AT_L1I
146
147 #ifndef AT_L1D
148 #define AT_L1D_CACHESHAPE 35
149 #endif  // AT_L1D
150
151 #ifndef AT_L2
152 #define AT_L2_CACHESHAPE 36
153 #endif  // AT_L2
154
155 #ifndef AT_L3
156 #define AT_L3_CACHESHAPE 37
157 #endif  // AT_L3
158
159
160
161 /// Converts an auxv type into a const string.  Useful for debugging.
162 const char *auxv_type_to_string(int auxv_type);
163
164 #endif // AUXV_TYPES_H
165
166