Commit | Line | Data |
---|---|---|
61ba1cf9 ILT |
1 | // i386.h -- ELF definitions specific to EM_386 -*- C++ -*- |
2 | ||
3 | #ifndef ELFCPP_I386_H | |
4 | #define ELFCPP_I386_H | |
5 | ||
6 | namespace elfcpp | |
7 | { | |
8 | ||
9 | enum | |
10 | { | |
11 | R_386_NONE = 0, | |
12 | R_386_32 = 1, | |
13 | R_386_PC32 = 2, | |
14 | R_386_GOT32 = 3, | |
15 | R_386_PLT32 = 4, | |
16 | R_386_COPY = 5, | |
17 | R_386_GLOB_DAT = 6, | |
18 | R_386_JUMP_SLOT = 7, | |
19 | R_386_RELATIVE = 8, | |
20 | R_386_GOTOFF = 9, | |
21 | R_386_GOTPC = 10, | |
22 | // Used by Sun. | |
23 | R_386_32PLT = 11, | |
24 | // TLS extensions. | |
25 | R_386_TLS_TPOFF = 14, | |
26 | R_386_TLS_IE = 15, | |
27 | R_386_TLS_GOTIE = 16, | |
28 | R_386_TLS_LE = 17, | |
29 | R_386_TLS_GD = 18, | |
30 | R_386_TLS_LDM = 19, | |
31 | // GNU extensions. | |
32 | R_386_16 = 20, | |
33 | R_386_PC16 = 21, | |
34 | R_386_8 = 22, | |
35 | R_386_PC8 = 23, | |
36 | // More TLS relocs. | |
37 | R_386_TLS_GD_32 = 24, | |
38 | R_386_TLS_GD_PUSH = 25, | |
39 | R_386_TLS_GD_CALL = 26, | |
40 | R_386_TLS_GD_POP = 27, | |
41 | R_386_TLS_LDM_32 = 28, | |
42 | R_386_TLS_LDM_PUSH = 29, | |
43 | R_386_TLS_LDM_CALL = 30, | |
44 | R_386_TLS_LDM_POP = 31, | |
45 | R_386_TLS_LDO_32 = 32, | |
46 | R_386_TLS_IE_32 = 33, | |
47 | R_386_TLS_LE_32 = 34, | |
48 | R_386_TLS_DTPMOD32 = 35, | |
49 | R_386_TLS_DTPOFF32 = 36, | |
50 | R_386_TLS_TPOFF32 = 37, | |
51 | R_386_TLS_GOTDESC = 39, | |
52 | R_386_TLS_DESC_CALL = 40, | |
53 | R_386_TLS_DESC = 41, | |
54 | // Used by Intel. | |
55 | R_386_USED_BY_INTEL_200 = 200, | |
56 | // GNU vtable garbage collection extensions. | |
57 | R_386_GNU_VTINHERIT = 250, | |
58 | R_386_GNU_VTENTRY = 251 | |
59 | }; | |
60 | ||
61 | } // End namespace elfcpp. | |
62 | ||
63 | #endif // !defined(ELFCPP_I386_H) |