dede76241c498f2c34b4a593ff8ba9b7fce3f2dc
[pyelftools.git] / elftools / elf / enums.py
1 #-------------------------------------------------------------------------------
2 # elftools: elf/enums.py
3 #
4 # Mappings of enum names to values
5 #
6 # Eli Bendersky (eliben@gmail.com)
7 # This code is in the public domain
8 #-------------------------------------------------------------------------------
9 from ..construct import Pass
10
11
12 # e_ident[EI_CLASS] in the ELF header
13 ENUM_EI_CLASS = dict(
14 ELFCLASSNONE=0,
15 ELFCLASS32=1,
16 ELFCLASS64=2
17 )
18
19 # e_ident[EI_DATA] in the ELF header
20 ENUM_EI_DATA = dict(
21 ELFDATANONE=0,
22 ELFDATA2LSB=1,
23 ELFDATA2MSB=2
24 )
25
26 # e_version in the ELF header
27 ENUM_E_VERSION = dict(
28 EV_NONE=0,
29 EV_CURRENT=1,
30 _default_=Pass,
31 )
32
33 # e_ident[EI_OSABI] in the ELF header
34 ENUM_EI_OSABI = dict(
35 ELFOSABI_SYSV=0,
36 ELFOSABI_HPUX=1,
37 ELFOSABI_NETBSD=2,
38 ELFOSABI_LINUX=3,
39 ELFOSABI_HURD=4,
40 ELFOSABI_SOLARIS=6,
41 ELFOSABI_AIX=7,
42 ELFOSABI_IRIX=8,
43 ELFOSABI_FREEBSD=9,
44 ELFOSABI_TRU64=10,
45 ELFOSABI_MODESTO=11,
46 ELFOSABI_OPENBSD=12,
47 ELFOSABI_OPENVMS=13,
48 ELFOSABI_NSK=14,
49 ELFOSABI_AROS=15,
50 ELFOSABI_FENIXOS=16,
51 ELFOSABI_CLOUD=17,
52 ELFOSABI_SORTIX=53,
53 ELFOSABI_ARM_AEABI=64,
54 ELFOSABI_ARM=97,
55 ELFOSABI_STANDALONE=255,
56 _default_=Pass,
57 )
58
59 # e_type in the ELF header
60 ENUM_E_TYPE = dict(
61 ET_NONE=0,
62 ET_REL=1,
63 ET_EXEC=2,
64 ET_DYN=3,
65 ET_CORE=4,
66 ET_LOPROC=0xff00,
67 ET_HIPROC=0xffff,
68 _default_=Pass,
69 )
70
71 # e_machine in the ELF header
72 ENUM_E_MACHINE = dict(
73 EM_NONE = 0, # No machine
74 EM_M32 = 1, # AT&T WE 32100
75 EM_SPARC = 2, # SPARC
76 EM_386 = 3, # Intel 80386
77 EM_68K = 4, # Motorola 68000
78 EM_88K = 5, # Motorola 88000
79 EM_IAMCU = 6, # Intel MCU
80 EM_860 = 7, # Intel 80860
81 EM_MIPS = 8, # MIPS I Architecture
82 EM_S370 = 9, # IBM System/370 Processor
83 EM_MIPS_RS3_LE = 10, # MIPS RS3000 Little-endian
84 EM_PARISC = 15, # Hewlett-Packard PA-RISC
85 EM_VPP500 = 17, # Fujitsu VPP500
86 EM_SPARC32PLUS = 18, # Enhanced instruction set SPARC
87 EM_960 = 19, # Intel 80960
88 EM_PPC = 20, # PowerPC
89 EM_PPC64 = 21, # 64-bit PowerPC
90 EM_S390 = 22, # IBM System/390 Processor
91 EM_SPU = 23, # IBM SPU/SPC
92 EM_V800 = 36, # NEC V800
93 EM_FR20 = 37, # Fujitsu FR20
94 EM_RH32 = 38, # TRW RH-32
95 EM_RCE = 39, # Motorola RCE
96 EM_ARM = 40, # ARM 32-bit architecture (AARCH32)
97 EM_ALPHA = 41, # Digital Alpha
98 EM_SH = 42, # Hitachi SH
99 EM_SPARCV9 = 43, # SPARC Version 9
100 EM_TRICORE = 44, # Siemens TriCore embedded processor
101 EM_ARC = 45, # Argonaut RISC Core, Argonaut Technologies Inc.
102 EM_H8_300 = 46, # Hitachi H8/300
103 EM_H8_300H = 47, # Hitachi H8/300H
104 EM_H8S = 48, # Hitachi H8S
105 EM_H8_500 = 49, # Hitachi H8/500
106 EM_IA_64 = 50, # Intel IA-64 processor architecture
107 EM_MIPS_X = 51, # Stanford MIPS-X
108 EM_COLDFIRE = 52, # Motorola ColdFire
109 EM_68HC12 = 53, # Motorola M68HC12
110 EM_MMA = 54, # Fujitsu MMA Multimedia Accelerator
111 EM_PCP = 55, # Siemens PCP
112 EM_NCPU = 56, # Sony nCPU embedded RISC processor
113 EM_NDR1 = 57, # Denso NDR1 microprocessor
114 EM_STARCORE = 58, # Motorola Star*Core processor
115 EM_ME16 = 59, # Toyota ME16 processor
116 EM_ST100 = 60, # STMicroelectronics ST100 processor
117 EM_TINYJ = 61, # Advanced Logic Corp. TinyJ embedded processor family
118 EM_X86_64 = 62, # AMD x86-64 architecture
119 EM_PDSP = 63, # Sony DSP Processor
120 EM_PDP10 = 64, # Digital Equipment Corp. PDP-10
121 EM_PDP11 = 65, # Digital Equipment Corp. PDP-11
122 EM_FX66 = 66, # Siemens FX66 microcontroller
123 EM_ST9PLUS = 67, # STMicroelectronics ST9+ 8/16 bit microcontroller
124 EM_ST7 = 68, # STMicroelectronics ST7 8-bit microcontroller
125 EM_68HC16 = 69, # Motorola MC68HC16 Microcontroller
126 EM_68HC11 = 70, # Motorola MC68HC11 Microcontroller
127 EM_68HC08 = 71, # Motorola MC68HC08 Microcontroller
128 EM_68HC05 = 72, # Motorola MC68HC05 Microcontroller
129 EM_SVX = 73, # Silicon Graphics SVx
130 EM_ST19 = 74, # STMicroelectronics ST19 8-bit microcontroller
131 EM_VAX = 75, # Digital VAX
132 EM_CRIS = 76, # Axis Communications 32-bit embedded processor
133 EM_JAVELIN = 77, # Infineon Technologies 32-bit embedded processor
134 EM_FIREPATH = 78, # Element 14 64-bit DSP Processor
135 EM_ZSP = 79, # LSI Logic 16-bit DSP Processor
136 EM_MMIX = 80, # Donald Knuth's educational 64-bit processor
137 EM_HUANY = 81, # Harvard University machine-independent object files
138 EM_PRISM = 82, # SiTera Prism
139 EM_AVR = 83, # Atmel AVR 8-bit microcontroller
140 EM_FR30 = 84, # Fujitsu FR30
141 EM_D10V = 85, # Mitsubishi D10V
142 EM_D30V = 86, # Mitsubishi D30V
143 EM_V850 = 87, # NEC v850
144 EM_M32R = 88, # Mitsubishi M32R
145 EM_MN10300 = 89, # Matsushita MN10300
146 EM_MN10200 = 90, # Matsushita MN10200
147 EM_PJ = 91, # picoJava
148 EM_OPENRISC = 92, # OpenRISC 32-bit embedded processor
149 EM_ARC_COMPACT = 93, # ARC International ARCompact processor (old spelling/synonym: EM_ARC_A5)
150 EM_XTENSA = 94, # Tensilica Xtensa Architecture
151 EM_VIDEOCORE = 95, # Alphamosaic VideoCore processor
152 EM_TMM_GPP = 96, # Thompson Multimedia General Purpose Processor
153 EM_NS32K = 97, # National Semiconductor 32000 series
154 EM_TPC = 98, # Tenor Network TPC processor
155 EM_SNP1K = 99, # Trebia SNP 1000 processor
156 EM_ST200 = 100, # STMicroelectronics (www.st.com) ST200 microcontroller
157 EM_IP2K = 101, # Ubicom IP2xxx microcontroller family
158 EM_MAX = 102, # MAX Processor
159 EM_CR = 103, # National Semiconductor CompactRISC microprocessor
160 EM_F2MC16 = 104, # Fujitsu F2MC16
161 EM_MSP430 = 105, # Texas Instruments embedded microcontroller msp430
162 EM_BLACKFIN = 106, # Analog Devices Blackfin (DSP) processor
163 EM_SE_C33 = 107, # S1C33 Family of Seiko Epson processors
164 EM_SEP = 108, # Sharp embedded microprocessor
165 EM_ARCA = 109, # Arca RISC Microprocessor
166 EM_UNICORE = 110, # Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University
167 EM_EXCESS = 111, # eXcess: 16/32/64-bit configurable embedded CPU
168 EM_DXP = 112, # Icera Semiconductor Inc. Deep Execution Processor
169 EM_ALTERA_NIOS2 = 113, # Altera Nios II soft-core processor
170 EM_CRX = 114, # National Semiconductor CompactRISC CRX microprocessor
171 EM_XGATE = 115, # Motorola XGATE embedded processor
172 EM_C166 = 116, # Infineon C16x/XC16x processor
173 EM_M16C = 117, # Renesas M16C series microprocessors
174 EM_DSPIC30F = 118, # Microchip Technology dsPIC30F Digital Signal Controller
175 EM_CE = 119, # Freescale Communication Engine RISC core
176 EM_M32C = 120, # Renesas M32C series microprocessors
177 EM_TSK3000 = 131, # Altium TSK3000 core
178 EM_RS08 = 132, # Freescale RS08 embedded processor
179 EM_SHARC = 133, # Analog Devices SHARC family of 32-bit DSP processors
180 EM_ECOG2 = 134, # Cyan Technology eCOG2 microprocessor
181 EM_SCORE7 = 135, # Sunplus S+core7 RISC processor
182 EM_DSP24 = 136, # New Japan Radio (NJR) 24-bit DSP Processor
183 EM_VIDEOCORE3 = 137, # Broadcom VideoCore III processor
184 EM_LATTICEMICO32 = 138, # RISC processor for Lattice FPGA architecture
185 EM_SE_C17 = 139, # Seiko Epson C17 family
186 EM_TI_C6000 = 140, # The Texas Instruments TMS320C6000 DSP family
187 EM_TI_C2000 = 141, # The Texas Instruments TMS320C2000 DSP family
188 EM_TI_C5500 = 142, # The Texas Instruments TMS320C55x DSP family
189 EM_TI_ARP32 = 143, # Texas Instruments Application Specific RISC Processor, 32bit fetch
190 EM_TI_PRU = 144, # Texas Instruments Programmable Realtime Unit
191 EM_MMDSP_PLUS = 160, # STMicroelectronics 64bit VLIW Data Signal Processor
192 EM_CYPRESS_M8C = 161, # Cypress M8C microprocessor
193 EM_R32C = 162, # Renesas R32C series microprocessors
194 EM_TRIMEDIA = 163, # NXP Semiconductors TriMedia architecture family
195 EM_QDSP6 = 164, # QUALCOMM DSP6 Processor
196 EM_8051 = 165, # Intel 8051 and variants
197 EM_STXP7X = 166, # STMicroelectronics STxP7x family of configurable and extensible RISC processors
198 EM_NDS32 = 167, # Andes Technology compact code size embedded RISC processor family
199 EM_ECOG1 = 168, # Cyan Technology eCOG1X family
200 EM_ECOG1X = 168, # Cyan Technology eCOG1X family
201 EM_MAXQ30 = 169, # Dallas Semiconductor MAXQ30 Core Micro-controllers
202 EM_XIMO16 = 170, # New Japan Radio (NJR) 16-bit DSP Processor
203 EM_MANIK = 171, # M2000 Reconfigurable RISC Microprocessor
204 EM_CRAYNV2 = 172, # Cray Inc. NV2 vector architecture
205 EM_RX = 173, # Renesas RX family
206 EM_METAG = 174, # Imagination Technologies META processor architecture
207 EM_MCST_ELBRUS = 175, # MCST Elbrus general purpose hardware architecture
208 EM_ECOG16 = 176, # Cyan Technology eCOG16 family
209 EM_CR16 = 177, # National Semiconductor CompactRISC CR16 16-bit microprocessor
210 EM_ETPU = 178, # Freescale Extended Time Processing Unit
211 EM_SLE9X = 179, # Infineon Technologies SLE9X core
212 EM_L10M = 180, # Intel L10M
213 EM_K10M = 181, # Intel K10M
214 EM_AARCH64 = 183, # ARM 64-bit architecture (AARCH64)
215 EM_AVR32 = 185, # Atmel Corporation 32-bit microprocessor family
216 EM_STM8 = 186, # STMicroeletronics STM8 8-bit microcontroller
217 EM_TILE64 = 187, # Tilera TILE64 multicore architecture family
218 EM_TILEPRO = 188, # Tilera TILEPro multicore architecture family
219 EM_MICROBLAZE = 189, # Xilinx MicroBlaze 32-bit RISC soft processor core
220 EM_CUDA = 190, # NVIDIA CUDA architecture
221 EM_TILEGX = 191, # Tilera TILE-Gx multicore architecture family
222 EM_CLOUDSHIELD = 192, # CloudShield architecture family
223 EM_COREA_1ST = 193, # KIPO-KAIST Core-A 1st generation processor family
224 EM_COREA_2ND = 194, # KIPO-KAIST Core-A 2nd generation processor family
225 EM_ARC_COMPACT2 = 195, # Synopsys ARCompact V2
226 EM_OPEN8 = 196, # Open8 8-bit RISC soft processor core
227 EM_RL78 = 197, # Renesas RL78 family
228 EM_VIDEOCORE5 = 198, # Broadcom VideoCore V processor
229 EM_78KOR = 199, # Renesas 78KOR family
230 EM_56800EX = 200, # Freescale 56800EX Digital Signal Controller (DSC)
231 EM_BA1 = 201, # Beyond BA1 CPU architecture
232 EM_BA2 = 202, # Beyond BA2 CPU architecture
233 EM_XCORE = 203, # XMOS xCORE processor family
234 EM_MCHP_PIC = 204, # Microchip 8-bit PIC(r) family
235 EM_INTEL205 = 205, # Reserved by Intel
236 EM_INTEL206 = 206, # Reserved by Intel
237 EM_INTEL207 = 207, # Reserved by Intel
238 EM_INTEL208 = 208, # Reserved by Intel
239 EM_INTEL209 = 209, # Reserved by Intel
240 EM_KM32 = 210, # KM211 KM32 32-bit processor
241 EM_KMX32 = 211, # KM211 KMX32 32-bit processor
242 EM_KMX16 = 212, # KM211 KMX16 16-bit processor
243 EM_KMX8 = 213, # KM211 KMX8 8-bit processor
244 EM_KVARC = 214, # KM211 KVARC processor
245 EM_CDP = 215, # Paneve CDP architecture family
246 EM_COGE = 216, # Cognitive Smart Memory Processor
247 EM_COOL = 217, # Bluechip Systems CoolEngine
248 EM_NORC = 218, # Nanoradio Optimized RISC
249 EM_CSR_KALIMBA = 219, # CSR Kalimba architecture family
250 EM_Z80 = 220, # Zilog Z80
251 EM_VISIUM = 221, # Controls and Data Services VISIUMcore processor
252 EM_FT32 = 222, # FTDI Chip FT32 high performance 32-bit RISC architecture
253 EM_MOXIE = 223, # Moxie processor family
254 EM_AMDGPU = 224, # AMD GPU architecture
255 EM_RISCV = 243, # RISC-V
256 # Reservations
257 # reserved 11-14 Reserved for future use
258 # reserved 16 Reserved for future use
259 # reserved 24-35 Reserved for future use
260 # reserved 121-130 Reserved for future use
261 # reserved 145-159 Reserved for future use
262 # reserved 145-159 Reserved for future use
263 # reserved 182 Reserved for future Intel use
264 # reserved 184 Reserved for future ARM use
265 # unknown/reserve? 225 - 242
266 _default_=Pass,
267 )
268
269 # sh_type in the section header
270 ENUM_SH_TYPE = dict(
271 SHT_NULL=0,
272 SHT_PROGBITS=1,
273 SHT_SYMTAB=2,
274 SHT_STRTAB=3,
275 SHT_RELA=4,
276 SHT_HASH=5,
277 SHT_DYNAMIC=6,
278 SHT_NOTE=7,
279 SHT_NOBITS=8,
280 SHT_REL=9,
281 SHT_SHLIB=10,
282 SHT_DYNSYM=11,
283 SHT_INIT_ARRAY=14,
284 SHT_FINI_ARRAY=15,
285 SHT_PREINIT_ARRAY=16,
286 SHT_GROUP=17,
287 SHT_SYMTAB_SHNDX=18,
288 SHT_NUM=19,
289 SHT_LOOS=0x60000000,
290 SHT_GNU_ATTRIBUTES=0x6ffffff5,
291 SHT_GNU_HASH=0x6ffffff6,
292 SHT_GNU_LIBLIST=0x6ffffff7,
293 SHT_GNU_verdef=0x6ffffffd, # also SHT_SUNW_verdef
294 SHT_GNU_verneed=0x6ffffffe, # also SHT_SUNW_verneed
295 SHT_GNU_versym=0x6fffffff, # also SHT_SUNW_versym, SHT_HIOS
296 SHT_LOPROC=0x70000000,
297 SHT_HIPROC=0x7fffffff,
298 SHT_LOUSER=0x80000000,
299 SHT_HIUSER=0xffffffff,
300 SHT_AMD64_UNWIND=0x70000001,
301 SHT_SUNW_LDYNSYM=0x6ffffff3,
302 SHT_SUNW_syminfo=0x6ffffffc,
303 SHT_ARM_EXIDX=0x70000001, # also SHT_MIPS_MSYM
304 SHT_ARM_PREEMPTMAP=0x70000002, # also SHT_MIPS_CONFLICT
305 SHT_ARM_ATTRIBUTES=0x70000003, # also SHT_MIPS_GPTAB
306 SHT_ARM_DEBUGOVERLAY=0x70000004, # also SHT_MIPS_UCODE
307 SHT_MIPS_LIBLIST=0x70000000,
308 SHT_MIPS_DEBUG=0x70000005,
309 SHT_MIPS_REGINFO=0x70000006,
310 SHT_MIPS_PACKAGE=0x70000007,
311 SHT_MIPS_PACKSYM=0x70000008,
312 SHT_MIPS_RELD=0x70000009,
313 SHT_MIPS_IFACE=0x7000000b,
314 SHT_MIPS_CONTENT=0x7000000c,
315 SHT_MIPS_OPTIONS=0x7000000d,
316 SHT_MIPS_SHDR=0x70000010,
317 SHT_MIPS_FDESC=0x70000011,
318 SHT_MIPS_EXTSYM=0x70000012,
319 SHT_MIPS_DENSE=0x70000013,
320 SHT_MIPS_PDESC=0x70000014,
321 SHT_MIPS_LOCSYM=0x70000015,
322 SHT_MIPS_AUXSYM=0x70000016,
323 SHT_MIPS_OPTSYM=0x70000017,
324 SHT_MIPS_LOCSTR=0x70000018,
325 SHT_MIPS_LINE=0x70000019,
326 SHT_MIPS_RFDESC=0x7000001a,
327 SHT_MIPS_DELTASYM=0x7000001b,
328 SHT_MIPS_DELTAINST=0x7000001c,
329 SHT_MIPS_DELTACLASS=0x7000001d,
330 SHT_MIPS_DWARF=0x7000001e,
331 SHT_MIPS_DELTADECL=0x7000001f,
332 SHT_MIPS_SYMBOL_LIB=0x70000020,
333 SHT_MIPS_EVENTS=0x70000021,
334 SHT_MIPS_TRANSLATE=0x70000022,
335 SHT_MIPS_PIXIE=0x70000023,
336 SHT_MIPS_XLATE=0x70000024,
337 SHT_MIPS_XLATE_DEBUG=0x70000025,
338 SHT_MIPS_WHIRL=0x70000026,
339 SHT_MIPS_EH_REGION=0x70000027,
340 SHT_MIPS_XLATE_OLD=0x70000028,
341 SHT_MIPS_PDR_EXCEPTION=0x70000029,
342 _default_=Pass,
343 )
344
345 ENUM_ELFCOMPRESS_TYPE = dict(
346 ELFCOMPRESS_ZLIB=1,
347 ELFCOMPRESS_LOOS=0x60000000,
348 ELFCOMPRESS_HIOS=0x6fffffff,
349 ELFCOMPRESS_LOPROC=0x70000000,
350 ELFCOMPRESS_HIPROC=0x7fffffff,
351 _default_=Pass,
352 )
353
354 # p_type in the program header
355 # some values scavenged from the ELF headers in binutils-2.21
356 ENUM_P_TYPE = dict(
357 PT_NULL=0,
358 PT_LOAD=1,
359 PT_DYNAMIC=2,
360 PT_INTERP=3,
361 PT_NOTE=4,
362 PT_SHLIB=5,
363 PT_PHDR=6,
364 PT_TLS=7,
365 PT_LOOS=0x60000000,
366 PT_HIOS=0x6fffffff,
367 PT_LOPROC=0x70000000,
368 PT_HIPROC=0x7fffffff,
369 PT_GNU_EH_FRAME=0x6474e550,
370 PT_GNU_STACK=0x6474e551,
371 PT_GNU_RELRO=0x6474e552,
372 PT_ARM_ARCHEXT=0x70000000,
373 PT_ARM_EXIDX=0x70000001,
374 PT_AARCH64_ARCHEXT=0x70000000,
375 PT_AARCH64_UNWIND=0x70000001,
376 _default_=Pass,
377 )
378
379 # st_info bindings in the symbol header
380 ENUM_ST_INFO_BIND = dict(
381 STB_LOCAL=0,
382 STB_GLOBAL=1,
383 STB_WEAK=2,
384 STB_NUM=3,
385 STB_LOOS=10,
386 STB_HIOS=12,
387 STB_LOPROC=13,
388 STB_HIPROC=15,
389 _default_=Pass,
390 )
391
392 # st_info type in the symbol header
393 ENUM_ST_INFO_TYPE = dict(
394 STT_NOTYPE=0,
395 STT_OBJECT=1,
396 STT_FUNC=2,
397 STT_SECTION=3,
398 STT_FILE=4,
399 STT_COMMON=5,
400 STT_TLS=6,
401 STT_NUM=7,
402 STT_RELC=8,
403 STT_SRELC=9,
404 STT_LOOS=10,
405 STT_HIOS=12,
406 STT_LOPROC=13,
407 STT_HIPROC=15,
408 _default_=Pass,
409 )
410
411 # visibility from st_other
412 ENUM_ST_VISIBILITY = dict(
413 STV_DEFAULT=0,
414 STV_INTERNAL=1,
415 STV_HIDDEN=2,
416 STV_PROTECTED=3,
417 STV_EXPORTED=4,
418 STV_SINGLETON=5,
419 STV_ELIMINATE=6,
420 _default_=Pass,
421 )
422
423 # st_shndx
424 ENUM_ST_SHNDX = dict(
425 SHN_UNDEF=0,
426 SHN_ABS=0xfff1,
427 SHN_COMMON=0xfff2,
428 _default_=Pass,
429 )
430
431 # d_tag
432 ENUM_D_TAG = dict(
433 DT_NULL=0,
434 DT_NEEDED=1,
435 DT_PLTRELSZ=2,
436 DT_PLTGOT=3,
437 DT_HASH=4,
438 DT_STRTAB=5,
439 DT_SYMTAB=6,
440 DT_RELA=7,
441 DT_RELASZ=8,
442 DT_RELAENT=9,
443 DT_STRSZ=10,
444 DT_SYMENT=11,
445 DT_INIT=12,
446 DT_FINI=13,
447 DT_SONAME=14,
448 DT_RPATH=15,
449 DT_SYMBOLIC=16,
450 DT_REL=17,
451 DT_RELSZ=18,
452 DT_RELENT=19,
453 DT_PLTREL=20,
454 DT_DEBUG=21,
455 DT_TEXTREL=22,
456 DT_JMPREL=23,
457 DT_BIND_NOW=24,
458 DT_INIT_ARRAY=25,
459 DT_FINI_ARRAY=26,
460 DT_INIT_ARRAYSZ=27,
461 DT_FINI_ARRAYSZ=28,
462 DT_RUNPATH=29,
463 DT_FLAGS=30,
464 DT_ENCODING=32,
465 DT_PREINIT_ARRAY=32,
466 DT_PREINIT_ARRAYSZ=33,
467 DT_NUM=34,
468 DT_LOOS=0x6000000d,
469 DT_SUNW_AUXILIARY=0x6000000d,
470 DT_SUNW_RTLDINF=0x6000000e,
471 DT_SUNW_FILTER=0x6000000f,
472 DT_SUNW_CAP=0x60000010,
473 DT_SUNW_SYMTAB=0x60000011,
474 DT_SUNW_SYMSZ=0x60000012,
475 DT_SUNW_ENCODING=0x60000013,
476 DT_SUNW_SORTENT=0x60000013,
477 DT_SUNW_SYMSORT=0x60000014,
478 DT_SUNW_SYMSORTSZ=0x60000015,
479 DT_SUNW_TLSSORT=0x60000016,
480 DT_SUNW_TLSSORTSZ=0x60000017,
481 DT_SUNW_CAPINFO=0x60000018,
482 DT_SUNW_STRPAD=0x60000019,
483 DT_SUNW_CAPCHAIN=0x6000001a,
484 DT_SUNW_LDMACH=0x6000001b,
485 DT_SUNW_CAPCHAINENT=0x6000001d,
486 DT_SUNW_CAPCHAINSZ=0x6000001f,
487 DT_HIOS=0x6ffff000,
488 DT_LOPROC=0x70000000,
489 DT_HIPROC=0x7fffffff,
490 DT_PROCNUM=0x35,
491 DT_VALRNGLO=0x6ffffd00,
492 DT_GNU_PRELINKED=0x6ffffdf5,
493 DT_GNU_CONFLICTSZ=0x6ffffdf6,
494 DT_GNU_LIBLISTSZ=0x6ffffdf7,
495 DT_CHECKSUM=0x6ffffdf8,
496 DT_PLTPADSZ=0x6ffffdf9,
497 DT_MOVEENT=0x6ffffdfa,
498 DT_MOVESZ=0x6ffffdfb,
499 DT_SYMINSZ=0x6ffffdfe,
500 DT_SYMINENT=0x6ffffdff,
501 DT_GNU_HASH=0x6ffffef5,
502 DT_TLSDESC_PLT=0x6ffffef6,
503 DT_TLSDESC_GOT=0x6ffffef7,
504 DT_GNU_CONFLICT=0x6ffffef8,
505 DT_GNU_LIBLIST=0x6ffffef9,
506 DT_CONFIG=0x6ffffefa,
507 DT_DEPAUDIT=0x6ffffefb,
508 DT_AUDIT=0x6ffffefc,
509 DT_PLTPAD=0x6ffffefd,
510 DT_MOVETAB=0x6ffffefe,
511 DT_SYMINFO=0x6ffffeff,
512 DT_VERSYM=0x6ffffff0,
513 DT_RELACOUNT=0x6ffffff9,
514 DT_RELCOUNT=0x6ffffffa,
515 DT_FLAGS_1=0x6ffffffb,
516 DT_VERDEF=0x6ffffffc,
517 DT_VERDEFNUM=0x6ffffffd,
518 DT_VERNEED=0x6ffffffe,
519 DT_VERNEEDNUM=0x6fffffff,
520 DT_MIPS_RLD_VERSION=0x70000001,
521 DT_MIPS_TIME_STAMP=0x70000002,
522 DT_MIPS_ICHECKSUM=0x70000003,
523 DT_MIPS_IVERSION=0x70000004,
524 DT_MIPS_FLAGS=0x70000005,
525 DT_MIPS_BASE_ADDRESS=0x70000006,
526 DT_MIPS_CONFLICT=0x70000008,
527 DT_MIPS_LIBLIST=0x70000009,
528 DT_MIPS_LOCAL_GOTNO=0x7000000a,
529 DT_MIPS_CONFLICTNO=0x7000000b,
530 DT_MIPS_LIBLISTNO=0x70000010,
531 DT_MIPS_SYMTABNO=0x70000011,
532 DT_MIPS_UNREFEXTNO=0x70000012,
533 DT_MIPS_GOTSYM=0x70000013,
534 DT_MIPS_HIPAGENO=0x70000014,
535 DT_MIPS_RLD_MAP=0x70000016,
536 DT_MIPS_RLD_MAP_REL=0x70000035,
537 DT_AUXILIARY=0x7ffffffd,
538 DT_FILTER=0x7fffffff,
539 _default_=Pass,
540 )
541
542 ENUM_RELOC_TYPE_MIPS = dict(
543 R_MIPS_NONE=0,
544 R_MIPS_16=1,
545 R_MIPS_32=2,
546 R_MIPS_REL32=3,
547 R_MIPS_26=4,
548 R_MIPS_HI16=5,
549 R_MIPS_LO16=6,
550 R_MIPS_GPREL16=7,
551 R_MIPS_LITERAL=8,
552 R_MIPS_GOT16=9,
553 R_MIPS_PC16=10,
554 R_MIPS_CALL16=11,
555 R_MIPS_GPREL32=12,
556 R_MIPS_SHIFT5=16,
557 R_MIPS_SHIFT6=17,
558 R_MIPS_64=18,
559 R_MIPS_GOT_DISP=19,
560 R_MIPS_GOT_PAGE=20,
561 R_MIPS_GOT_OFST=21,
562 R_MIPS_GOT_HI16=22,
563 R_MIPS_GOT_LO16=23,
564 R_MIPS_SUB=24,
565 R_MIPS_INSERT_A=25,
566 R_MIPS_INSERT_B=26,
567 R_MIPS_DELETE=27,
568 R_MIPS_HIGHER=28,
569 R_MIPS_HIGHEST=29,
570 R_MIPS_CALL_HI16=30,
571 R_MIPS_CALL_LO16=31,
572 R_MIPS_SCN_DISP=32,
573 R_MIPS_REL16=33,
574 R_MIPS_ADD_IMMEDIATE=34,
575 R_MIPS_PJUMP=35,
576 R_MIPS_RELGOT=36,
577 R_MIPS_JALR=37,
578 R_MIPS_TLS_DTPMOD32=38,
579 R_MIPS_TLS_DTPREL32=39,
580 R_MIPS_TLS_DTPMOD64=40,
581 R_MIPS_TLS_DTPREL64=41,
582 R_MIPS_TLS_GD=42,
583 R_MIPS_TLS_LDM=43,
584 R_MIPS_TLS_DTPREL_HI16=44,
585 R_MIPS_TLS_DTPREL_LO16=45,
586 R_MIPS_TLS_GOTTPREL=46,
587 R_MIPS_TLS_TPREL32=47,
588 R_MIPS_TLS_TPREL64=48,
589 R_MIPS_TLS_TPREL_HI16=49,
590 R_MIPS_TLS_TPREL_LO16=50,
591 R_MIPS_GLOB_DAT=51,
592 R_MIPS_COPY=126,
593 R_MIPS_JUMP_SLOT=127,
594 _default_=Pass,
595 )
596
597 ENUM_RELOC_TYPE_i386 = dict(
598 R_386_NONE=0,
599 R_386_32=1,
600 R_386_PC32=2,
601 R_386_GOT32=3,
602 R_386_PLT32=4,
603 R_386_COPY=5,
604 R_386_GLOB_DAT=6,
605 R_386_JUMP_SLOT=7,
606 R_386_RELATIVE=8,
607 R_386_GOTOFF=9,
608 R_386_GOTPC=10,
609 R_386_32PLT=11,
610 R_386_TLS_TPOFF=14,
611 R_386_TLS_IE=15,
612 R_386_TLS_GOTIE=16,
613 R_386_TLS_LE=17,
614 R_386_TLS_GD=18,
615 R_386_TLS_LDM=19,
616 R_386_16=20,
617 R_386_PC16=21,
618 R_386_8=22,
619 R_386_PC8=23,
620 R_386_TLS_GD_32=24,
621 R_386_TLS_GD_PUSH=25,
622 R_386_TLS_GD_CALL=26,
623 R_386_TLS_GD_POP=27,
624 R_386_TLS_LDM_32=28,
625 R_386_TLS_LDM_PUSH=29,
626 R_386_TLS_LDM_CALL=30,
627 R_386_TLS_LDM_POP=31,
628 R_386_TLS_LDO_32=32,
629 R_386_TLS_IE_32=33,
630 R_386_TLS_LE_32=34,
631 R_386_TLS_DTPMOD32=35,
632 R_386_TLS_DTPOFF32=36,
633 R_386_TLS_TPOFF32=37,
634 R_386_TLS_GOTDESC=39,
635 R_386_TLS_DESC_CALL=40,
636 R_386_TLS_DESC=41,
637 R_386_IRELATIVE=42,
638 R_386_USED_BY_INTEL_200=200,
639 R_386_GNU_VTINHERIT=250,
640 R_386_GNU_VTENTRY=251,
641 _default_=Pass,
642 )
643
644 ENUM_RELOC_TYPE_x64 = dict(
645 R_X86_64_NONE=0,
646 R_X86_64_64=1,
647 R_X86_64_PC32=2,
648 R_X86_64_GOT32=3,
649 R_X86_64_PLT32=4,
650 R_X86_64_COPY=5,
651 R_X86_64_GLOB_DAT=6,
652 R_X86_64_JUMP_SLOT=7,
653 R_X86_64_RELATIVE=8,
654 R_X86_64_GOTPCREL=9,
655 R_X86_64_32=10,
656 R_X86_64_32S=11,
657 R_X86_64_16=12,
658 R_X86_64_PC16=13,
659 R_X86_64_8=14,
660 R_X86_64_PC8=15,
661 R_X86_64_DTPMOD64=16,
662 R_X86_64_DTPOFF64=17,
663 R_X86_64_TPOFF64=18,
664 R_X86_64_TLSGD=19,
665 R_X86_64_TLSLD=20,
666 R_X86_64_DTPOFF32=21,
667 R_X86_64_GOTTPOFF=22,
668 R_X86_64_TPOFF32=23,
669 R_X86_64_PC64=24,
670 R_X86_64_GOTOFF64=25,
671 R_X86_64_GOTPC32=26,
672 R_X86_64_GOT64=27,
673 R_X86_64_GOTPCREL64=28,
674 R_X86_64_GOTPC64=29,
675 R_X86_64_GOTPLT64=30,
676 R_X86_64_PLTOFF64=31,
677 R_X86_64_GOTPC32_TLSDESC=34,
678 R_X86_64_TLSDESC_CALL=35,
679 R_X86_64_TLSDESC=36,
680 R_X86_64_IRELATIVE=37,
681 R_X86_64_GNU_VTINHERIT=250,
682 R_X86_64_GNU_VTENTRY=251,
683 _default_=Pass,
684 )
685
686 # Sunw Syminfo Bound To special values
687 ENUM_SUNW_SYMINFO_BOUNDTO = dict(
688 SYMINFO_BT_SELF=0xffff,
689 SYMINFO_BT_PARENT=0xfffe,
690 SYMINFO_BT_NONE=0xfffd,
691 SYMINFO_BT_EXTERN=0xfffc,
692 _default_=Pass,
693 )
694
695 # Versym section, version dependency index
696 ENUM_VERSYM = dict(
697 VER_NDX_LOCAL=0,
698 VER_NDX_GLOBAL=1,
699 VER_NDX_LORESERVE=0xff00,
700 VER_NDX_ELIMINATE=0xff01,
701 _default_=Pass,
702 )
703
704 # Sunw Syminfo Bound To special values
705 ENUM_SUNW_SYMINFO_BOUNDTO = dict(
706 SYMINFO_BT_SELF=0xffff,
707 SYMINFO_BT_PARENT=0xfffe,
708 SYMINFO_BT_NONE=0xfffd,
709 SYMINFO_BT_EXTERN=0xfffc,
710 _default_=Pass,
711 )
712
713 # PT_NOTE section types for all ELF types except ET_CORE
714 ENUM_NOTE_N_TYPE = dict(
715 NT_GNU_ABI_TAG=1,
716 NT_GNU_HWCAP=2,
717 NT_GNU_BUILD_ID=3,
718 NT_GNU_GOLD_VERSION=4,
719 _default_=Pass,
720 )
721
722 # PT_NOTE section types for ET_CORE
723 ENUM_CORE_NOTE_N_TYPE = dict(
724 NT_PRSTATUS=1,
725 NT_FPREGSET=2,
726 NT_PRPSINFO=3,
727 NT_TASKSTRUCT=4,
728 NT_AUXV=6,
729 NT_SIGINFO=0x53494749,
730 NT_FILE=0x46494c45,
731 _default_=Pass,
732 )
733
734 # Values in GNU .note.ABI-tag notes (n_type=='NT_GNU_ABI_TAG')
735 ENUM_NOTE_ABI_TAG_OS = dict(
736 ELF_NOTE_OS_LINUX=0,
737 ELF_NOTE_OS_GNU=1,
738 ELF_NOTE_OS_SOLARIS2=2,
739 ELF_NOTE_OS_FREEBSD=3,
740 ELF_NOTE_OS_NETBSD=4,
741 ELF_NOTE_OS_SYLLABLE=5,
742 _default_=Pass,
743 )
744
745 ENUM_RELOC_TYPE_ARM = dict(
746 R_ARM_NONE=0,
747 R_ARM_PC24=1,
748 R_ARM_ABS32=2,
749 R_ARM_REL32=3,
750 R_ARM_LDR_PC_G0=4,
751 R_ARM_ABS16=5,
752 R_ARM_ABS12=6,
753 R_ARM_THM_ABS5=7,
754 R_ARM_ABS8=8,
755 R_ARM_SBREL32=9,
756 R_ARM_THM_CALL=10,
757 R_ARM_THM_PC8=11,
758 R_ARM_BREL_ADJ=12,
759 R_ARM_SWI24=13,
760 R_ARM_THM_SWI8=14,
761 R_ARM_XPC25=15,
762 R_ARM_THM_XPC22=16,
763 R_ARM_TLS_DTPMOD32=17,
764 R_ARM_TLS_DTPOFF32=18,
765 R_ARM_TLS_TPOFF32=19,
766 R_ARM_COPY=20,
767 R_ARM_GLOB_DAT=21,
768 R_ARM_JUMP_SLOT=22,
769 R_ARM_RELATIVE=23,
770 R_ARM_GOTOFF32=24,
771 R_ARM_BASE_PREL=25,
772 R_ARM_GOT_BREL=26,
773 R_ARM_PLT32=27,
774 R_ARM_CALL=28,
775 R_ARM_JUMP24=29,
776 R_ARM_THM_JUMP24=30,
777 R_ARM_BASE_ABS=31,
778 R_ARM_ALU_PCREL_7_0=32,
779 R_ARM_ALU_PCREL_15_8=33,
780 R_ARM_ALU_PCREL_23_15=34,
781 R_ARM_LDR_SBREL_11_0_NC=35,
782 R_ARM_ALU_SBREL_19_12_NC=36,
783 R_ARM_ALU_SBREL_27_20_CK=37,
784 R_ARM_TARGET1=38,
785 R_ARM_SBREL31=39,
786 R_ARM_V4BX=40,
787 R_ARM_TARGET2=41,
788 R_ARM_PREL31=42,
789 R_ARM_MOVW_ABS_NC=43,
790 R_ARM_MOVT_ABS=44,
791 R_ARM_MOVW_PREL_NC=45,
792 R_ARM_MOVT_PREL=46,
793 R_ARM_THM_MOVW_ABS_NC=47,
794 R_ARM_THM_MOVT_ABS=48,
795 R_ARM_THM_MOVW_PREL_NC=49,
796 R_ARM_THM_MOVT_PREL=50,
797 R_ARM_THM_JUMP19=51,
798 R_ARM_THM_JUMP6=52,
799 R_ARM_THM_ALU_PREL_11_0=53,
800 R_ARM_THM_PC12=54,
801 R_ARM_ABS32_NOI=55,
802 R_ARM_REL32_NOI=56,
803 R_ARM_ALU_PC_G0_NC=57,
804 R_ARM_ALU_PC_G0=58,
805 R_ARM_ALU_PC_G1_NC=59,
806 R_ARM_ALU_PC_G1=60,
807 R_ARM_ALU_PC_G2=61,
808 R_ARM_LDR_PC_G1=62,
809 R_ARM_LDR_PC_G2=63,
810 R_ARM_LDRS_PC_G0=64,
811 R_ARM_LDRS_PC_G1=65,
812 R_ARM_LDRS_PC_G2=66,
813 R_ARM_LDC_PC_G0=67,
814 R_ARM_LDC_PC_G1=68,
815 R_ARM_LDC_PC_G2=69,
816 R_ARM_ALU_SB_G0_NC=70,
817 R_ARM_ALU_SB_G0=71,
818 R_ARM_ALU_SB_G1_NC=72,
819 R_ARM_ALU_SB_G1=73,
820 R_ARM_ALU_SB_G2=74,
821 R_ARM_LDR_SB_G0=75,
822 R_ARM_LDR_SB_G1=76,
823 R_ARM_LDR_SB_G2=77,
824 R_ARM_LDRS_SB_G0=78,
825 R_ARM_LDRS_SB_G1=79,
826 R_ARM_LDRS_SB_G2=80,
827 R_ARM_LDC_SB_G0=81,
828 R_ARM_LDC_SB_G1=82,
829 R_ARM_LDC_SB_G2=83,
830 R_ARM_MOVW_BREL_NC=84,
831 R_ARM_MOVT_BREL=85,
832 R_ARM_MOVW_BREL=86,
833 R_ARM_THM_MOVW_BREL_NC=87,
834 R_ARM_THM_MOVT_BREL=88,
835 R_ARM_THM_MOVW_BREL=89,
836 R_ARM_PLT32_ABS=94,
837 R_ARM_GOT_ABS=95,
838 R_ARM_GOT_PREL=96,
839 R_ARM_GOT_BREL12=97,
840 R_ARM_GOTOFF12=98,
841 R_ARM_GOTRELAX=99,
842 R_ARM_GNU_VTENTRY=100,
843 R_ARM_GNU_VTINHERIT=101,
844 R_ARM_THM_JUMP11=102,
845 R_ARM_THM_JUMP8=103,
846 R_ARM_TLS_GD32=104,
847 R_ARM_TLS_LDM32=105,
848 R_ARM_TLS_LDO32=106,
849 R_ARM_TLS_IE32=107,
850 R_ARM_TLS_LE32=108,
851 R_ARM_TLS_LDO12=109,
852 R_ARM_TLS_LE12=110,
853 R_ARM_TLS_IE12GP=111,
854 R_ARM_PRIVATE_0=112,
855 R_ARM_PRIVATE_1=113,
856 R_ARM_PRIVATE_2=114,
857 R_ARM_PRIVATE_3=115,
858 R_ARM_PRIVATE_4=116,
859 R_ARM_PRIVATE_5=117,
860 R_ARM_PRIVATE_6=118,
861 R_ARM_PRIVATE_7=119,
862 R_ARM_PRIVATE_8=120,
863 R_ARM_PRIVATE_9=121,
864 R_ARM_PRIVATE_10=122,
865 R_ARM_PRIVATE_11=123,
866 R_ARM_PRIVATE_12=124,
867 R_ARM_PRIVATE_13=125,
868 R_ARM_PRIVATE_14=126,
869 R_ARM_PRIVATE_15=127,
870 R_ARM_ME_TOO=128,
871 R_ARM_THM_TLS_DESCSEQ16=129,
872 R_ARM_THM_TLS_DESCSEQ32=130,
873 R_ARM_THM_GOT_BREL12=131,
874 R_ARM_IRELATIVE=140,
875 )
876
877 ENUM_RELOC_TYPE_AARCH64 = dict(
878 R_AARCH64_NONE=256,
879 R_AARCH64_ABS64=257,
880 R_AARCH64_ABS32=258,
881 R_AARCH64_ABS16=259,
882 R_AARCH64_PREL64=260,
883 R_AARCH64_PREL32=261,
884 R_AARCH64_PREL16=262,
885 R_AARCH64_MOVW_UABS_G0=263,
886 R_AARCH64_MOVW_UABS_G0_NC=264,
887 R_AARCH64_MOVW_UABS_G1=265,
888 R_AARCH64_MOVW_UABS_G1_NC=266,
889 R_AARCH64_MOVW_UABS_G2=267,
890 R_AARCH64_MOVW_UABS_G2_NC=268,
891 R_AARCH64_MOVW_UABS_G3=269,
892 R_AARCH64_MOVW_SABS_G0=270,
893 R_AARCH64_MOVW_SABS_G1=271,
894 R_AARCH64_MOVW_SABS_G2=272,
895 R_AARCH64_LD_PREL_LO19=273,
896 R_AARCH64_ADR_PREL_LO21=274,
897 R_AARCH64_ADR_PREL_PG_HI21=275,
898 R_AARCH64_ADR_PREL_PG_HI21_NC=276,
899 R_AARCH64_ADD_ABS_LO12_NC=277,
900 R_AARCH64_LDST8_ABS_LO12_NC=278,
901 R_AARCH64_TSTBR14=279,
902 R_AARCH64_CONDBR19=280,
903 R_AARCH64_JUMP26=282,
904 R_AARCH64_CALL26=283,
905 R_AARCH64_LDST16_ABS_LO12_NC=284,
906 R_AARCH64_LDST32_ABS_LO12_NC=285,
907 R_AARCH64_LDST64_ABS_LO12_NC=286,
908 R_AARCH64_MOVW_PREL_G0=287,
909 R_AARCH64_MOVW_PREL_G0_NC=288,
910 R_AARCH64_MOVW_PREL_G1=289,
911 R_AARCH64_MOVW_PREL_G1_NC=290,
912 R_AARCH64_MOVW_PREL_G2=291,
913 R_AARCH64_MOVW_PREL_G2_NC=292,
914 R_AARCH64_MOVW_PREL_G3=293,
915 R_AARCH64_MOVW_GOTOFF_G0=300,
916 R_AARCH64_MOVW_GOTOFF_G0_NC=301,
917 R_AARCH64_MOVW_GOTOFF_G1=302,
918 R_AARCH64_MOVW_GOTOFF_G1_NC=303,
919 R_AARCH64_MOVW_GOTOFF_G2=304,
920 R_AARCH64_MOVW_GOTOFF_G2_NC=305,
921 R_AARCH64_MOVW_GOTOFF_G3=306,
922 R_AARCH64_GOTREL64=307,
923 R_AARCH64_GOTREL32=308,
924 R_AARCH64_GOT_LD_PREL19=309,
925 R_AARCH64_LD64_GOTOFF_LO15=310,
926 R_AARCH64_ADR_GOT_PAGE=311,
927 R_AARCH64_LD64_GOT_LO12_NC=312,
928 R_AARCH64_TLSGD_ADR_PREL21=512,
929 R_AARCH64_TLSGD_ADR_PAGE21=513,
930 R_AARCH64_TLSGD_ADD_LO12_NC=514,
931 R_AARCH64_TLSGD_MOVW_G1=515,
932 R_AARCH64_TLSGD_MOVW_G0_NC=516,
933 R_AARCH64_TLSLD_ADR_PREL21=517,
934 R_AARCH64_TLSLD_ADR_PAGE21=518,
935 R_AARCH64_TLSLD_ADD_LO12_NC=519,
936 R_AARCH64_TLSLD_MOVW_G1=520,
937 R_AARCH64_TLSLD_MOVW_G0_NC=521,
938 R_AARCH64_TLSLD_LD_PREL19=522,
939 R_AARCH64_TLSLD_MOVW_DTPREL_G2=523,
940 R_AARCH64_TLSLD_MOVW_DTPREL_G1=524,
941 R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC=525,
942 R_AARCH64_TLSLD_MOVW_DTPREL_G0=526,
943 R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC=527,
944 R_AARCH64_TLSLD_ADD_DTPREL_HI12=528,
945 R_AARCH64_TLSLD_ADD_DTPREL_LO12=529,
946 R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC=530,
947 R_AARCH64_TLSLD_LDST8_DTPREL_LO12=531,
948 R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC=532,
949 R_AARCH64_TLSLD_LDST16_DTPREL_LO12=533,
950 R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC=534,
951 R_AARCH64_TLSLD_LDST32_DTPREL_LO12=535,
952 R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC=536,
953 R_AARCH64_TLSLD_LDST64_DTPREL_LO12=537,
954 R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC=538,
955 R_AARCH64_TLSIE_MOVW_GOTTPREL_G1=539,
956 R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC=540,
957 R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21=541,
958 R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC=542,
959 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19=543,
960 R_AARCH64_TLSLE_MOVW_TPREL_G2=544,
961 R_AARCH64_TLSLE_MOVW_TPREL_G1=545,
962 R_AARCH64_TLSLE_MOVW_TPREL_G1_NC=546,
963 R_AARCH64_TLSLE_MOVW_TPREL_G0=547,
964 R_AARCH64_TLSLE_MOVW_TPREL_G0_NC=548,
965 R_AARCH64_TLSLE_ADD_TPREL_HI12=549,
966 R_AARCH64_TLSLE_ADD_TPREL_LO12=550,
967 R_AARCH64_TLSLE_ADD_TPREL_LO12_NC=551,
968 R_AARCH64_TLSLE_LDST8_TPREL_LO12=552,
969 R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC=553,
970 R_AARCH64_TLSLE_LDST16_TPREL_LO12=554,
971 R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC=555,
972 R_AARCH64_TLSLE_LDST32_TPREL_LO12=556,
973 R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC=557,
974 R_AARCH64_TLSLE_LDST64_TPREL_LO12=558,
975 R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC=559,
976 R_AARCH64_COPY=1024,
977 R_AARCH64_GLOB_DAT=1025,
978 R_AARCH64_JUMP_SLOT=1026,
979 R_AARCH64_RELATIVE=1027,
980 R_AARCH64_TLS_DTPREL64=1028,
981 R_AARCH64_TLS_DTPMOD64=1029,
982 R_AARCH64_TLS_TPREL64=1030,
983 R_AARCH64_TLS_DTPREL32=1031,
984 R_AARCH64_TLS_DTPMOD32=1032,
985 R_AARCH64_TLS_TPREL32=1033,
986 )
987
988 ENUM_ATTR_TAG_ARM = dict(
989 TAG_FILE=1,
990 TAG_SECTION=2,
991 TAG_SYMBOL=3,
992 TAG_CPU_RAW_NAME=4,
993 TAG_CPU_NAME=5,
994 TAG_CPU_ARCH=6,
995 TAG_CPU_ARCH_PROFILE=7,
996 TAG_ARM_ISA_USE=8,
997 TAG_THUMB_ISA_USE=9,
998 TAG_FP_ARCH=10,
999 TAG_WMMX_ARCH=11,
1000 TAG_ADVANCED_SIMD_ARCH=12,
1001 TAG_PCS_CONFIG=13,
1002 TAG_ABI_PCS_R9_USE=14,
1003 TAG_ABI_PCS_RW_DATA=15,
1004 TAG_ABI_PCS_RO_DATA=16,
1005 TAG_ABI_PCS_GOT_USE=17,
1006 TAG_ABI_PCS_WCHAR_T=18,
1007 TAG_ABI_FP_ROUNDING=19,
1008 TAG_ABI_FP_DENORMAL=20,
1009 TAG_ABI_FP_EXCEPTIONS=21,
1010 TAG_ABI_FP_USER_EXCEPTIONS=22,
1011 TAG_ABI_FP_NUMBER_MODEL=23,
1012 TAG_ABI_ALIGN_NEEDED=24,
1013 TAG_ABI_ALIGN_PRESERVED=25,
1014 TAG_ABI_ENUM_SIZE=26,
1015 TAG_ABI_HARDFP_USE=27,
1016 TAG_ABI_VFP_ARGS=28,
1017 TAG_ABI_WMMX_ARGS=29,
1018 TAG_ABI_OPTIMIZATION_GOALS=30,
1019 TAG_ABI_FP_OPTIMIZATION_GOALS=31,
1020 TAG_COMPATIBILITY=32,
1021 TAG_CPU_UNALIGNED_ACCESS=34,
1022 TAG_FP_HP_EXTENSION=36,
1023 TAG_ABI_FP_16BIT_FORMAT=38,
1024 TAG_MPEXTENSION_USE=42,
1025 TAG_DIV_USE=44,
1026 TAG_NODEFAULTS=64,
1027 TAG_ALSO_COMPATIBLE_WITH=65,
1028 TAG_T2EE_USE=66,
1029 TAG_CONFORMANCE=67,
1030 TAG_VIRTUALIZATION_USE=68,
1031 TAG_MPEXTENSION_USE_OLD=70,
1032 )