ReactOS
0.4.16-dev-433-g6363f78
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Functions
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
Variables
_
c
d
e
f
g
h
i
l
n
o
p
s
t
u
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
_
c
d
f
i
l
m
o
p
s
t
w
x
Enumerator
a
b
c
d
e
f
g
h
i
m
n
o
p
r
s
t
u
v
w
x
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerator
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
v
x
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Examples
common.h
Go to the documentation of this file.
1
/*-
2
* Copyright (c) 1998 John D. Polstra.
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
7
* are met:
8
* 1. Redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer.
10
* 2. Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
*
14
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24
* SUCH DAMAGE.
25
*
26
* $FreeBSD: src/sys/sys/elf_common.h,v 1.15 2004/05/05 02:38:54 marcel Exp $
27
*/
28
29
#ifndef _SYS_ELF_COMMON_H_
30
#define _SYS_ELF_COMMON_H_ 1
31
32
/*
33
* ELF definitions that are independent of architecture or word size.
34
*/
35
36
/*
37
* Note header. The ".note" section contains an array of notes. Each
38
* begins with this header, aligned to a word boundary. Immediately
39
* following the note header is n_namesz bytes of name, padded to the
40
* next word boundary. Then comes n_descsz bytes of descriptor, again
41
* padded to a word boundary. The values of n_namesz and n_descsz do
42
* not include the padding.
43
*/
44
45
typedef
struct
{
46
UINT32
n_namesz
;
/* Length of name. */
47
UINT32
n_descsz
;
/* Length of descriptor. */
48
UINT32
n_type
;
/* Type of this note. */
49
}
Elf_Note
;
50
51
/* Indexes into the e_ident array. Keep synced with
52
http://www.sco.com/developer/gabi/ch4.eheader.html */
53
#define EI_MAG0 0
/* Magic number, byte 0. */
54
#define EI_MAG1 1
/* Magic number, byte 1. */
55
#define EI_MAG2 2
/* Magic number, byte 2. */
56
#define EI_MAG3 3
/* Magic number, byte 3. */
57
#define EI_CLASS 4
/* Class of machine. */
58
#define EI_DATA 5
/* Data format. */
59
#define EI_VERSION 6
/* ELF format version. */
60
#define EI_OSABI 7
/* Operating system / ABI identification */
61
#define EI_ABIVERSION 8
/* ABI version */
62
#define OLD_EI_BRAND 8
/* Start of architecture identification. */
63
#define EI_PAD 9
/* Start of padding (per SVR4 ABI). */
64
#define EI_NIDENT 16
/* Size of e_ident array. */
65
66
/* Values for the magic number bytes. */
67
#define ELFMAG0 0x7f
68
#define ELFMAG1 'E'
69
#define ELFMAG2 'L'
70
#define ELFMAG3 'F'
71
#define ELFMAG "\177ELF"
/* magic string */
72
#define SELFMAG 4
/* magic string size */
73
74
/* Values for e_ident[EI_VERSION] and e_version. */
75
#define EV_NONE 0
76
#define EV_CURRENT 1
77
78
/* Values for e_ident[EI_CLASS]. */
79
#define ELFCLASSNONE 0
/* Unknown class. */
80
#define ELFCLASS32 1
/* 32-bit architecture. */
81
#define ELFCLASS64 2
/* 64-bit architecture. */
82
83
/* Values for e_ident[EI_DATA]. */
84
#define ELFDATANONE 0
/* Unknown data format. */
85
#define ELFDATA2LSB 1
/* 2's complement little-endian. */
86
#define ELFDATA2MSB 2
/* 2's complement big-endian. */
87
88
/* Values for e_ident[EI_OSABI]. */
89
#define ELFOSABI_SYSV 0
/* UNIX System V ABI */
90
#define ELFOSABI_NONE ELFOSABI_SYSV
/* symbol used in old spec */
91
#define ELFOSABI_HPUX 1
/* HP-UX operating system */
92
#define ELFOSABI_NETBSD 2
/* NetBSD */
93
#define ELFOSABI_LINUX 3
/* GNU/Linux */
94
#define ELFOSABI_HURD 4
/* GNU/Hurd */
95
#define ELFOSABI_86OPEN 5
/* 86Open common IA32 ABI */
96
#define ELFOSABI_SOLARIS 6
/* Solaris */
97
#define ELFOSABI_MONTEREY 7
/* Monterey */
98
#define ELFOSABI_IRIX 8
/* IRIX */
99
#define ELFOSABI_FREEBSD 9
/* FreeBSD */
100
#define ELFOSABI_TRU64 10
/* TRU64 UNIX */
101
#define ELFOSABI_MODESTO 11
/* Novell Modesto */
102
#define ELFOSABI_OPENBSD 12
/* OpenBSD */
103
#define ELFOSABI_ARM 97
/* ARM */
104
#define ELFOSABI_STANDALONE 255
/* Standalone (embedded) application */
105
106
/* e_ident */
107
#define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \
108
(ehdr).e_ident[EI_MAG1] == ELFMAG1 && \
109
(ehdr).e_ident[EI_MAG2] == ELFMAG2 && \
110
(ehdr).e_ident[EI_MAG3] == ELFMAG3)
111
112
/* Values for e_type. */
113
#define ET_NONE 0
/* Unknown type. */
114
#define ET_REL 1
/* Relocatable. */
115
#define ET_EXEC 2
/* Executable. */
116
#define ET_DYN 3
/* Shared object. */
117
#define ET_CORE 4
/* Core file. */
118
119
/* Values for e_machine. */
120
/*
121
* Source:
122
* System V Application Binary Interface (DRAFT) 2003-12-17, Chapter 4, Section
123
* "ELF Header"
124
*/
125
#define EM_NONE 0
/* No machine */
126
#define EM_M32 1
/* AT&T WE 32100 */
127
#define EM_SPARC 2
/* SPARC */
128
#define EM_386 3
/* Intel 80386 */
129
#define EM_68K 4
/* Motorola 68000 */
130
#define EM_88K 5
/* Motorola 88000 */
131
/* reserved 6 Reserved for future use (was EM_486) */
132
#define EM_860 7
/* Intel 80860 */
133
#define EM_MIPS 8
/* MIPS I Architecture */
134
#define EM_S370 9
/* IBM System/370 Processor */
135
#define EM_MIPS_RS3_LE 10
/* MIPS RS3000 Little-endian */
136
/* reserved 11-14 Reserved for future use */
137
#define EM_PARISC 15
/* Hewlett-Packard PA-RISC */
138
/* reserved 16 Reserved for future use */
139
#define EM_VPP500 17
/* Fujitsu VPP500 */
140
#define EM_SPARC32PLUS 18
/* Enhanced instruction set SPARC */
141
#define EM_960 19
/* Intel 80960 */
142
#define EM_PPC 20
/* PowerPC */
143
#define EM_PPC64 21
/* 64-bit PowerPC */
144
#define EM_S390 22
/* IBM System/390 Processor */
145
/* reserved 23-35 Reserved for future use */
146
#define EM_V800 36
/* NEC V800 */
147
#define EM_FR20 37
/* Fujitsu FR20 */
148
#define EM_RH32 38
/* TRW RH-32 */
149
#define EM_RCE 39
/* Motorola RCE */
150
#define EM_ARM 40
/* Advanced RISC Machines ARM */
151
#define EM_ALPHA 41
/* Digital Alpha */
152
#define EM_SH 42
/* Hitachi SH */
153
#define EM_SPARCV9 43
/* SPARC Version 9 */
154
#define EM_TRICORE 44
/* Siemens TriCore embedded processor */
155
#define EM_ARC 45
/* Argonaut RISC Core, Argonaut Technologies
156
Inc. */
157
#define EM_H8_300 46
/* Hitachi H8/300 */
158
#define EM_H8_300H 47
/* Hitachi H8/300H */
159
#define EM_H8S 48
/* Hitachi H8S */
160
#define EM_H8_500 49
/* Hitachi H8/500 */
161
#define EM_IA_64 50
/* Intel IA-64 processor architecture */
162
#define EM_MIPS_X 51
/* Stanford MIPS-X */
163
#define EM_COLDFIRE 52
/* Motorola ColdFire */
164
#define EM_68HC12 53
/* Motorola M68HC12 */
165
#define EM_MMA 54
/* Fujitsu MMA Multimedia Accelerator */
166
#define EM_PCP 55
/* Siemens PCP */
167
#define EM_NCPU 56
/* Sony nCPU embedded RISC processor */
168
#define EM_NDR1 57
/* Denso NDR1 microprocessor */
169
#define EM_STARCORE 58
/* Motorola Star*Core processor */
170
#define EM_ME16 59
/* Toyota ME16 processor */
171
#define EM_ST100 60
/* STMicroelectronics ST100 processor */
172
#define EM_TINYJ 61
/* Advanced Logic Corp. TinyJ embedded processor
173
family */
174
#define EM_X86_64 62
/* AMD x86-64 architecture */
175
#define EM_PDSP 63
/* Sony DSP Processor */
176
#define EM_PDP10 64
/* Digital Equipment Corp. PDP-10 */
177
#define EM_PDP11 65
/* Digital Equipment Corp. PDP-11 */
178
#define EM_FX66 66
/* Siemens FX66 microcontroller */
179
#define EM_ST9PLUS 67
/* STMicroelectronics ST9+ 8/16 bit
180
microcontroller */
181
#define EM_ST7 68
/* STMicroelectronics ST7 8-bit
182
microcontroller */
183
#define EM_68HC16 69
/* Motorola MC68HC16 Microcontroller */
184
#define EM_68HC11 70
/* Motorola MC68HC11 Microcontroller */
185
#define EM_68HC08 71
/* Motorola MC68HC08 Microcontroller */
186
#define EM_68HC05 72
/* Motorola MC68HC05 Microcontroller */
187
#define EM_SVX 73
/* Silicon Graphics SVx */
188
#define EM_ST19 74
/* STMicroelectronics ST19 8-bit
189
microcontroller */
190
#define EM_VAX 75
/* Digital VAX */
191
#define EM_CRIS 76
/* Axis Communications 32-bit embedded
192
processor */
193
#define EM_JAVELIN 77
/* Infineon Technologies 32-bit embedded
194
processor */
195
#define EM_FIREPATH 78
/* Element 14 64-bit DSP Processor */
196
#define EM_ZSP 79
/* LSI Logic 16-bit DSP Processor */
197
#define EM_MMIX 80
/* Donald Knuth's educational 64-bit
198
processor */
199
#define EM_HUANY 81
/* Harvard University machine-independent object
200
files */
201
#define EM_PRISM 82
/* SiTera Prism */
202
#define EM_AVR 83
/* Atmel AVR 8-bit microcontroller */
203
#define EM_FR30 84
/* Fujitsu FR30 */
204
#define EM_D10V 85
/* Mitsubishi D10V */
205
#define EM_D30V 86
/* Mitsubishi D30V */
206
#define EM_V850 87
/* NEC v850 */
207
#define EM_M32R 88
/* Mitsubishi M32R */
208
#define EM_MN10300 89
/* Matsushita MN10300 */
209
#define EM_MN10200 90
/* Matsushita MN10200 */
210
#define EM_PJ 91
/* picoJava */
211
#define EM_OPENRISC 92
/* OpenRISC 32-bit embedded processor */
212
#define EM_ARC_A5 93
/* ARC Cores Tangent-A5 */
213
#define EM_XTENSA 94
/* Tensilica Xtensa Architecture */
214
#define EM_VIDEOCORE 95
/* Alphamosaic VideoCore processor */
215
#define EM_TMM_GPP 96
/* Thompson Multimedia General Purpose
216
Processor */
217
#define EM_NS32K 97
/* National Semiconductor 32000 series */
218
#define EM_TPC 98
/* Tenor Network TPC processor */
219
#define EM_SNP1K 99
/* Trebia SNP 1000 processor */
220
#define EM_ST200 100
/* STMicroelectronics (www.st.com) ST200
221
microcontroller */
222
#define EM_IP2K 101
/* Ubicom IP2xxx microcontroller family */
223
#define EM_MAX 102
/* MAX Processor */
224
#define EM_CR 103
/* National Semiconductor CompactRISC
225
microprocessor */
226
#define EM_F2MC16 104
/* Fujitsu F2MC16 */
227
#define EM_MSP430 105
/* Texas Instruments embedded microcontroller
228
msp430 */
229
#define EM_BLACKFIN 106
/* Analog Devices Blackfin (DSP) processor */
230
#define EM_SE_C33 107
/* S1C33 Family of Seiko Epson processors */
231
#define EM_SEP 108
/* Sharp embedded microprocessor */
232
#define EM_ARCA 109
/* Arca RISC Microprocessor */
233
#define EM_UNICORE 110
/* Microprocessor series from PKU-Unity Ltd. and
234
MPRC of Peking University */
235
236
/* Special section indexes. */
237
#define SHN_UNDEF 0
/* Undefined, missing, irrelevant. */
238
#define SHN_LORESERVE 0xff00
/* First of reserved range. */
239
#define SHN_LOPROC 0xff00
/* First processor-specific. */
240
#define SHN_HIPROC 0xff1f
/* Last processor-specific. */
241
#define SHN_ABS 0xfff1
/* Absolute values. */
242
#define SHN_COMMON 0xfff2
/* Common data. */
243
#define SHN_HIRESERVE 0xffff
/* Last of reserved range. */
244
245
/* sh_type */
246
#define SHT_NULL 0
/* inactive */
247
#define SHT_PROGBITS 1
/* program defined information */
248
#define SHT_SYMTAB 2
/* symbol table section */
249
#define SHT_STRTAB 3
/* string table section */
250
#define SHT_RELA 4
/* relocation section with addends */
251
#define SHT_HASH 5
/* symbol hash table section */
252
#define SHT_DYNAMIC 6
/* dynamic section */
253
#define SHT_NOTE 7
/* note section */
254
#define SHT_NOBITS 8
/* no space section */
255
#define SHT_REL 9
/* relocation section - no addends */
256
#define SHT_SHLIB 10
/* reserved - purpose unknown */
257
#define SHT_DYNSYM 11
/* dynamic symbol table section */
258
#define SHT_NUM 12
/* number of section types */
259
#define SHT_LOOS 0x60000000
/* First of OS specific semantics */
260
#define SHT_HIOS 0x6fffffff
/* Last of OS specific semantics */
261
#define SHT_LOPROC 0x70000000
/* reserved range for processor */
262
#define SHT_HIPROC 0x7fffffff
/* specific section header types */
263
#define SHT_LOUSER 0x80000000
/* reserved range for application */
264
#define SHT_HIUSER 0xffffffff
/* specific indexes */
265
266
/* Flags for sh_flags. */
267
#define SHF_WRITE 0x1
/* Section contains writable data. */
268
#define SHF_ALLOC 0x2
/* Section occupies memory. */
269
#define SHF_EXECINSTR 0x4
/* Section contains instructions. */
270
#define SHF_TLS 0x400
/* Section contains TLS data. */
271
#define SHF_MASKPROC 0xf0000000
/* Reserved for processor-specific. */
272
273
/* Values for p_type. */
274
#define PT_NULL 0
/* Unused entry. */
275
#define PT_LOAD 1
/* Loadable segment. */
276
#define PT_DYNAMIC 2
/* Dynamic linking information segment. */
277
#define PT_INTERP 3
/* Pathname of interpreter. */
278
#define PT_NOTE 4
/* Auxiliary information. */
279
#define PT_SHLIB 5
/* Reserved (not used). */
280
#define PT_PHDR 6
/* Location of program header itself. */
281
#define PT_TLS 7
/* Thread local storage segment */
282
283
#define PT_COUNT 8
/* Number of defined p_type values. */
284
285
#define PT_LOOS 0x60000000
/* OS-specific */
286
#define PT_HIOS 0x6fffffff
/* OS-specific */
287
#define PT_LOPROC 0x70000000
/* First processor-specific type. */
288
#define PT_HIPROC 0x7fffffff
/* Last processor-specific type. */
289
290
/* Values for p_flags. */
291
#define PF_X 0x1
/* Executable. */
292
#define PF_W 0x2
/* Writable. */
293
#define PF_R 0x4
/* Readable. */
294
295
/* Values for d_tag. */
296
#define DT_NULL 0
/* Terminating entry. */
297
#define DT_NEEDED 1
/* String table offset of a needed shared
298
library. */
299
#define DT_PLTRELSZ 2
/* Total size in bytes of PLT relocations. */
300
#define DT_PLTGOT 3
/* Processor-dependent address. */
301
#define DT_HASH 4
/* Address of symbol hash table. */
302
#define DT_STRTAB 5
/* Address of string table. */
303
#define DT_SYMTAB 6
/* Address of symbol table. */
304
#define DT_RELA 7
/* Address of ElfNN_Rela relocations. */
305
#define DT_RELASZ 8
/* Total size of ElfNN_Rela relocations. */
306
#define DT_RELAENT 9
/* Size of each ElfNN_Rela relocation entry. */
307
#define DT_STRSZ 10
/* Size of string table. */
308
#define DT_SYMENT 11
/* Size of each symbol table entry. */
309
#define DT_INIT 12
/* Address of initialization function. */
310
#define DT_FINI 13
/* Address of finalization function. */
311
#define DT_SONAME 14
/* String table offset of shared object
312
name. */
313
#define DT_RPATH 15
/* String table offset of library path. [sup] */
314
#define DT_SYMBOLIC 16
/* Indicates "symbolic" linking. [sup] */
315
#define DT_REL 17
/* Address of ElfNN_Rel relocations. */
316
#define DT_RELSZ 18
/* Total size of ElfNN_Rel relocations. */
317
#define DT_RELENT 19
/* Size of each ElfNN_Rel relocation. */
318
#define DT_PLTREL 20
/* Type of relocation used for PLT. */
319
#define DT_DEBUG 21
/* Reserved (not used). */
320
#define DT_TEXTREL 22
/* Indicates there may be relocations in
321
non-writable segments. [sup] */
322
#define DT_JMPREL 23
/* Address of PLT relocations. */
323
#define DT_BIND_NOW 24
/* [sup] */
324
#define DT_INIT_ARRAY 25
/* Address of the array of pointers to
325
initialization functions */
326
#define DT_FINI_ARRAY 26
/* Address of the array of pointers to
327
termination functions */
328
#define DT_INIT_ARRAYSZ 27
/* Size in bytes of the array of
329
initialization functions. */
330
#define DT_FINI_ARRAYSZ 28
/* Size in bytes of the array of
331
terminationfunctions. */
332
#define DT_RUNPATH 29
/* String table offset of a null-terminated
333
library search path string. */
334
#define DT_FLAGS 30
/* Object specific flag values. */
335
#define DT_ENCODING 32
/* Values greater than or equal to DT_ENCODING
336
and less than DT_LOOS follow the rules for
337
the interpretation of the d_un union
338
as follows: even == 'd_ptr', even == 'd_val'
339
or none */
340
#define DT_PREINIT_ARRAY 32
/* Address of the array of pointers to
341
pre-initialization functions. */
342
#define DT_PREINIT_ARRAYSZ 33
/* Size in bytes of the array of
343
pre-initialization functions. */
344
345
#define DT_COUNT 33
/* Number of defined d_tag values. */
346
347
#define DT_LOOS 0x6000000d
/* First OS-specific */
348
#define DT_HIOS 0x6fff0000
/* Last OS-specific */
349
#define DT_LOPROC 0x70000000
/* First processor-specific type. */
350
#define DT_HIPROC 0x7fffffff
/* Last processor-specific type. */
351
352
/* Values for DT_FLAGS */
353
#define DF_ORIGIN 0x0001
/* Indicates that the object being loaded may
354
make reference to the $ORIGIN substitution
355
string */
356
#define DF_SYMBOLIC 0x0002
/* Indicates "symbolic" linking. */
357
#define DF_TEXTREL 0x0004
/* Indicates there may be relocations in
358
non-writable segments. */
359
#define DF_BIND_NOW 0x0008
/* Indicates that the dynamic linker should
360
process all relocations for the object
361
containing this entry before transferring
362
control to the program. */
363
#define DF_STATIC_TLS 0x0010
/* Indicates that the shared object or
364
executable contains code using a static
365
thread-local storage scheme. */
366
367
/* Values for n_type. Used in core files. */
368
#define NT_PRSTATUS 1
/* Process status. */
369
#define NT_FPREGSET 2
/* Floating point registers. */
370
#define NT_PRPSINFO 3
/* Process state info. */
371
372
/* Symbol Binding - ELFNN_ST_BIND - st_info */
373
#define STB_LOCAL 0
/* Local symbol */
374
#define STB_GLOBAL 1
/* Global symbol */
375
#define STB_WEAK 2
/* like global - lower precedence */
376
#define STB_LOPROC 13
/* reserved range for processor */
377
#define STB_HIPROC 15
/* specific symbol bindings */
378
379
/* Symbol type - ELFNN_ST_TYPE - st_info */
380
#define STT_NOTYPE 0
/* Unspecified type. */
381
#define STT_OBJECT 1
/* Data object. */
382
#define STT_FUNC 2
/* Function. */
383
#define STT_SECTION 3
/* Section. */
384
#define STT_FILE 4
/* Source file. */
385
#define STT_TLS 6
/* TLS object. */
386
#define STT_LOPROC 13
/* reserved range for processor */
387
#define STT_HIPROC 15
/* specific symbol types */
388
389
/* Special symbol table indexes. */
390
#define STN_UNDEF 0
/* Undefined symbol index. */
391
392
#endif
/* !_SYS_ELF_COMMON_H_ */
UINT32
unsigned int UINT32
Definition:
ProcessorBind.h:163
Elf_Note
Definition:
common.h:45
Elf_Note::n_descsz
UINT32 n_descsz
Definition:
common.h:47
Elf_Note::n_type
UINT32 n_type
Definition:
common.h:48
Elf_Note::n_namesz
UINT32 n_namesz
Definition:
common.h:46
sdk
include
reactos
elf
common.h
Generated on Tue Jan 7 2025 06:17:25 for ReactOS by
1.9.6