/* These constants are for the segment types stored in the image headers */#definePT_NULL0#definePT_LOAD1#definePT_DYNAMIC2#definePT_INTERP3#definePT_NOTE4#definePT_SHLIB5#definePT_PHDR6#definePT_LOPROC0x70000000#definePT_HIPROC0x7fffffff
/* Bogus old v850 magic number, used by old tools. */#defineEM_CYGNUS_V8500x9080/**ThisistheoldinterimvalueforS/390architecture*/#defineEM_S390_OLD0xA390
/* This is the info that is needed to parse the dynamic section of the file */#defineDT_NULL0#defineDT_NEEDED1#defineDT_PLTRELSZ2#defineDT_PLTGOT3#defineDT_HASH4#defineDT_STRTAB5#defineDT_SYMTAB6#defineDT_RELA7#defineDT_RELASZ8#defineDT_RELAENT9#defineDT_STRSZ10#defineDT_SYMENT11#defineDT_INIT12#defineDT_FINI13#defineDT_SONAME14#defineDT_RPATH15#defineDT_SYMBOLIC16#defineDT_REL17#defineDT_RELSZ18#defineDT_RELENT19#defineDT_PLTREL20#defineDT_DEBUG21#defineDT_TEXTREL22#defineDT_JMPREL23#defineDT_LOPROC0x70000000#defineDT_HIPROC0x7fffffff
/* This info is needed when parsing the symbol table */#defineSTB_LOCAL0#defineSTB_GLOBAL1#defineSTB_WEAK2#defineSTT_NOTYPE0#defineSTT_OBJECT1#defineSTT_FUNC2#defineSTT_SECTION3#defineSTT_FILE4
/*Symbolicvaluesfortheentriesintheauxiliarytableputontheinitialstack*/#defineAT_NULL0/* end of vector */#defineAT_IGNORE1/* entry should be ignored */#defineAT_EXECFD2/* file descriptor of program */#defineAT_PHDR3/* program headers for program */#defineAT_PHENT4/* size of program header entry */#defineAT_PHNUM5/* number of program headers */#defineAT_PAGESZ6/* system page size */#defineAT_BASE7/* base address of interpreter */#defineAT_FLAGS8/* flags */#defineAT_ENTRY9/* entry point of program */#defineAT_NOTELF10/* program is not ELF */#defineAT_UID11/* real uid */#defineAT_EUID12/* effective uid */#defineAT_GID13/* real gid */#defineAT_EGID14/* effective gid */
#defineAT_PLATFORM15/* string identifying CPU for optimizations */#defineAT_HWCAP16/* arch dependent hints at CPU capabilities */#defineAT_CLKTCK17/* frequency at which times() increments */
#defineR_SPARC_WDISP1640#defineR_SPARC_WDISP1941#defineR_SPARC_743#defineR_SPARC_544#defineR_SPARC_645/* Bits present in AT_HWCAP, primarily for Sparc32. */#defineHWCAP_SPARC_FLUSH1/* CPU supports flush instruction. */#defineHWCAP_SPARC_STBAR2#defineHWCAP_SPARC_SWAP4#defineHWCAP_SPARC_MULDIV8#defineHWCAP_SPARC_V916#defineHWCAP_SPARC_ULTRA332/**68kELFrelocationtypes*/#defineR_68K_NONE0#defineR_68K_321#defineR_68K_162#defineR_68K_83#defineR_68K_PC324#defineR_68K_PC165#defineR_68K_PC86#defineR_68K_GOT327#defineR_68K_GOT168#defineR_68K_GOT89#defineR_68K_GOT32O10#defineR_68K_GOT16O11#defineR_68K_GOT8O12#defineR_68K_PLT3213#defineR_68K_PLT1614#defineR_68K_PLT815#defineR_68K_PLT32O16#defineR_68K_PLT16O17#defineR_68K_PLT8O18#defineR_68K_COPY19#defineR_68K_GLOB_DAT20#defineR_68K_JMP_SLOT21#defineR_68K_RELATIVE22/**AlphaELFrelocationtypes*/#defineR_ALPHA_NONE0/* No reloc */#defineR_ALPHA_REFLONG1/* Direct 32 bit */#defineR_ALPHA_REFQUAD2/* Direct 64 bit */#defineR_ALPHA_GPREL323/* GP relative 32 bit */#defineR_ALPHA_LITERAL4/* GP relative 16 bit w/optimization */#defineR_ALPHA_LITUSE5/* Optimization hint for LITERAL */#defineR_ALPHA_GPDISP6/* Add displacement to GP */#defineR_ALPHA_BRADDR7/* PC+4 relative 23 bit shifted */#defineR_ALPHA_HINT8/* PC+4 relative 16 bit shifted */#defineR_ALPHA_SREL169/* PC relative 16 bit */#defineR_ALPHA_SREL3210/* PC relative 32 bit */#defineR_ALPHA_SREL6411/* PC relative 64 bit */#defineR_ALPHA_GPRELHIGH17/* GP relative 32 bit, high 16 bits */#defineR_ALPHA_GPRELLOW18/* GP relative 32 bit, low 16 bits */#defineR_ALPHA_GPREL1619/* GP relative 16 bit */#defineR_ALPHA_COPY24/* Copy symbol at runtime */#defineR_ALPHA_GLOB_DAT25/* Create GOT entry */#defineR_ALPHA_JMP_SLOT26/* Create PLT entry */#defineR_ALPHA_RELATIVE27/* Adjust by program base */#defineR_ALPHA_BRSGP28#defineR_ALPHA_TLSGD29#defineR_ALPHA_TLS_LDM30#defineR_ALPHA_DTPMOD6431#defineR_ALPHA_GOTDTPREL32#defineR_ALPHA_DTPREL6433#defineR_ALPHA_DTPRELHI34#defineR_ALPHA_DTPRELLO35#defineR_ALPHA_DTPREL1636#defineR_ALPHA_GOTTPREL37#defineR_ALPHA_TPREL6438#defineR_ALPHA_TPRELHI39#defineR_ALPHA_TPRELLO40#defineR_ALPHA_TPREL1641#defineSHF_ALPHA_GPREL0x10000000/* PowerPC relocations defined by the ABIs */#defineR_PPC_NONE0#defineR_PPC_ADDR321/* 32bit absolute address */#defineR_PPC_ADDR242/* 26bit address, 2 bits ignored. */#defineR_PPC_ADDR163/* 16bit absolute address */#defineR_PPC_ADDR16_LO4/* lower 16bit of absolute address */#defineR_PPC_ADDR16_HI5/* high 16bit of absolute address */#defineR_PPC_ADDR16_HA6/* adjusted high 16bit */#defineR_PPC_ADDR147/* 16bit address, 2 bits ignored */#defineR_PPC_ADDR14_BRTAKEN8#defineR_PPC_ADDR14_BRNTAKEN9#defineR_PPC_REL2410/* PC relative 26 bit */#defineR_PPC_REL1411/* PC relative 16 bit */#defineR_PPC_REL14_BRTAKEN12#defineR_PPC_REL14_BRNTAKEN13#defineR_PPC_GOT1614#defineR_PPC_GOT16_LO15#defineR_PPC_GOT16_HI16#defineR_PPC_GOT16_HA17#defineR_PPC_PLTREL2418#defineR_PPC_COPY19#defineR_PPC_GLOB_DAT20#defineR_PPC_JMP_SLOT21#defineR_PPC_RELATIVE22#defineR_PPC_LOCAL24PC23#defineR_PPC_UADDR3224#defineR_PPC_UADDR1625#defineR_PPC_REL3226#defineR_PPC_PLT3227#defineR_PPC_PLTREL3228#defineR_PPC_PLT16_LO29#defineR_PPC_PLT16_HI30#defineR_PPC_PLT16_HA31#defineR_PPC_SDAREL1632#defineR_PPC_SECTOFF33#defineR_PPC_SECTOFF_LO34#defineR_PPC_SECTOFF_HI35#defineR_PPC_SECTOFF_HA36/* Keep this the last entry. */#defineR_PPC_NUM37/* ARM specific declarations *//* Processor specific flags for the ELF header e_flags field. */#defineEF_ARM_RELEXEC0x01#defineEF_ARM_HASENTRY0x02#defineEF_ARM_INTERWORK0x04#defineEF_ARM_APCS_260x08#defineEF_ARM_APCS_FLOAT0x10#defineEF_ARM_PIC0x20#defineEF_ALIGN80x40/* 8-bit structure alignment is in use */#defineEF_NEW_ABI0x80#defineEF_OLD_ABI0x100/* Additional symbol types for Thumb */#defineSTT_ARM_TFUNC0xd/* ARM-specific values for sh_flags */#defineSHF_ARM_ENTRYSECT0x10000000/* Section contains an entry point */#defineSHF_ARM_COMDEF0x80000000/*Sectionmaybemultiplydefinedintheinputtoalinkstep*//* ARM-specific program header flags */#definePF_ARM_SB0x10000000/*Segmentcontainsthelocationaddressedbythestaticbase*//* ARM relocs. */#defineR_ARM_NONE0/* No reloc */#defineR_ARM_PC241/* PC relative 26 bit branch */#defineR_ARM_ABS322/* Direct 32 bit */#defineR_ARM_REL323/* PC relative 32 bit */#defineR_ARM_PC134#defineR_ARM_ABS165/* Direct 16 bit */#defineR_ARM_ABS126/* Direct 12 bit */#defineR_ARM_THM_ABS57#defineR_ARM_ABS88/* Direct 8 bit */#defineR_ARM_SBREL329#defineR_ARM_THM_PC2210#defineR_ARM_THM_PC811#defineR_ARM_AMP_VCALL912#defineR_ARM_SWI2413#defineR_ARM_THM_SWI814#defineR_ARM_XPC2515#defineR_ARM_THM_XPC2216#defineR_ARM_COPY20/* Copy symbol at runtime */#defineR_ARM_GLOB_DAT21/* Create GOT entry */#defineR_ARM_JUMP_SLOT22/* Create PLT entry */#defineR_ARM_RELATIVE23/* Adjust by program base */#defineR_ARM_GOTOFF24/* 32 bit offset to GOT */#defineR_ARM_GOTPC25/* 32 bit PC relative offset to GOT */#defineR_ARM_GOT3226/* 32 bit GOT entry */#defineR_ARM_PLT3227/* 32 bit PLT address */
#defineR_ARM_GNU_VTENTRY100#defineR_ARM_GNU_VTINHERIT101#defineR_ARM_THM_PC11102/* thumb unconditional branch */#defineR_ARM_THM_PC9103/* thumb conditional branch */#defineR_ARM_RXPC25249#defineR_ARM_RSBREL32250#defineR_ARM_THM_RPC22251#defineR_ARM_RREL32252#defineR_ARM_RABS22253#defineR_ARM_RPC24254#defineR_ARM_RBASE255/* Keep this the last entry. */#defineR_ARM_NUM256/* s390 relocations defined by the ABIs */#defineR_390_NONE0/* No reloc. */#defineR_390_81/* Direct 8 bit. */#defineR_390_122/* Direct 12 bit. */#defineR_390_163/* Direct 16 bit. */#defineR_390_324/* Direct 32 bit. */#defineR_390_PC325/* PC relative 32 bit. */#defineR_390_GOT126/* 12 bit GOT offset. */#defineR_390_GOT327/* 32 bit GOT offset. */#defineR_390_PLT328/* 32 bit PC relative PLT address. */#defineR_390_COPY9/* Copy symbol at runtime. */#defineR_390_GLOB_DAT10/* Create GOT entry. */#defineR_390_JMP_SLOT11/* Create PLT entry. */#defineR_390_RELATIVE12/* Adjust by program base. */#defineR_390_GOTOFF3213/* 32 bit offset to GOT. */#defineR_390_GOTPC14/* 32 bit PC rel. offset to GOT. */#defineR_390_GOT1615/* 16 bit GOT offset. */#defineR_390_PC1616/* PC relative 16 bit. */#defineR_390_PC16DBL17/* PC relative 16 bit shifted by 1. */#defineR_390_PLT16DBL18/* 16 bit PC rel. PLT shifted by 1. */#defineR_390_PC32DBL19/* PC relative 32 bit shifted by 1. */#defineR_390_PLT32DBL20/* 32 bit PC rel. PLT shifted by 1. */#defineR_390_GOTPCDBL21/* 32 bit PC rel. GOT shifted by 1. */#defineR_390_6422/* Direct 64 bit. */#defineR_390_PC6423/* PC relative 64 bit. */#defineR_390_GOT6424/* 64 bit GOT offset. */#defineR_390_PLT6425/* 64 bit PC relative PLT address. */#defineR_390_GOTENT26/* 32 bit PC rel. to GOT entry >> 1. */#defineR_390_GOTOFF1627/* 16 bit offset to GOT. */#defineR_390_GOTOFF6428/* 64 bit offset to GOT. */#defineR_390_GOTPLT1229/* 12 bit offset to jump slot. */#defineR_390_GOTPLT1630/* 16 bit offset to jump slot. */#defineR_390_GOTPLT3231/* 32 bit offset to jump slot. */#defineR_390_GOTPLT6432/* 64 bit offset to jump slot. */#defineR_390_GOTPLTENT33/* 32 bit rel. offset to jump slot. */#defineR_390_PLTOFF1634/* 16 bit offset from GOT to PLT. */#defineR_390_PLTOFF3235/* 32 bit offset from GOT to PLT. */#defineR_390_PLTOFF6436/* 16 bit offset from GOT to PLT. */#defineR_390_TLS_LOAD37/* Tag for load insn in TLS code. */#defineR_390_TLS_GDCALL38/*TagforfunctioncallingeneraldynamicTLScode.*/#defineR_390_TLS_LDCALL39/*TagforfunctioncallinlocaldynamicTLScode.*/#defineR_390_TLS_GD3240/*Direct32bitforgeneraldynamicthreadlocaldata.*/#defineR_390_TLS_GD6441/*Direct64bitforgeneraldynamicthreadlocaldata.*/#defineR_390_TLS_GOTIE1242/*12bitGOToffsetforstaticTLSblockoffset.*/#defineR_390_TLS_GOTIE3243/*32bitGOToffsetforstaticTLSblockoffset.*/#defineR_390_TLS_GOTIE6444/*64bitGOToffsetforstaticTLSblockoffset.*/#defineR_390_TLS_LDM3245/*Direct32bitforlocaldynamicthreadlocaldatainLDcode.*/#defineR_390_TLS_LDM6446/*Direct64bitforlocaldynamicthreadlocaldatainLDcode.*/#defineR_390_TLS_IE3247/*32bitaddressofGOTentryfornegatedstaticTLSblockoffset.*/#defineR_390_TLS_IE6448/*64bitaddressofGOTentryfornegatedstaticTLSblockoffset.*/#defineR_390_TLS_IEENT49/*32bitrel.offsettoGOTentryfornegatedstaticTLSblockoffset.*/#defineR_390_TLS_LE3250/*32bitnegatedoffsetrelativetostaticTLSblock.*/#defineR_390_TLS_LE6451/*64bitnegatedoffsetrelativetostaticTLSblock.*/#defineR_390_TLS_LDO3252/*32bitoffsetrelativetoTLSblock.*/#defineR_390_TLS_LDO6453/*64bitoffsetrelativetoTLSblock.*/#defineR_390_TLS_DTPMOD54/* ID of module containing symbol. */#defineR_390_TLS_DTPOFF55/* Offset in TLS block. */#defineR_390_TLS_TPOFF56/*NegateoffsetinstaticTLSblock.*//* Keep this the last entry. */#defineR_390_NUM57/* x86-64 relocation types */#defineR_X86_64_NONE0/* No reloc */#defineR_X86_64_641/* Direct 64 bit */#defineR_X86_64_PC322/* PC relative 32 bit signed */#defineR_X86_64_GOT323/* 32 bit GOT entry */#defineR_X86_64_PLT324/* 32 bit PLT address */#defineR_X86_64_COPY5/* Copy symbol at runtime */#defineR_X86_64_GLOB_DAT6/* Create GOT entry */#defineR_X86_64_JUMP_SLOT7/* Create PLT entry */#defineR_X86_64_RELATIVE8/* Adjust by program base */#defineR_X86_64_GOTPCREL9/*32bitsignedpcrelativeoffsettoGOT*/#defineR_X86_64_3210/* Direct 32 bit zero extended */#defineR_X86_64_32S11/* Direct 32 bit sign extended */#defineR_X86_64_1612/* Direct 16 bit zero extended */#defineR_X86_64_PC1613/* 16 bit sign extended pc relative */#defineR_X86_64_814/* Direct 8 bit sign extended */#defineR_X86_64_PC815/* 8 bit sign extended pc relative */#defineR_X86_64_NUM16/* Legal values for e_flags field of Elf64_Ehdr. */#defineEF_ALPHA_32BIT1/* All addresses are below 2GB *//* HPPA specific definitions. *//* Legal values for e_flags field of Elf32_Ehdr. */#defineEF_PARISC_TRAPNIL0x00010000/* Trap nil pointer dereference. */#defineEF_PARISC_EXT0x00020000/* Program uses arch. extensions. */#defineEF_PARISC_LSB0x00040000/* Program expects little endian. */#defineEF_PARISC_WIDE0x00080000/* Program expects wide mode. */#defineEF_PARISC_NO_KABP0x00100000/*Nokernelassistedbranchprediction.*/#defineEF_PARISC_LAZYSWAP0x00400000/* Allow lazy swapping. */#defineEF_PARISC_ARCH0x0000ffff/* Architecture version. *//* Defined values for `e_flags & EF_PARISC_ARCH' are: */#defineEFA_PARISC_1_00x020b/* PA-RISC 1.0 big-endian. */#defineEFA_PARISC_1_10x0210/* PA-RISC 1.1 big-endian. */#defineEFA_PARISC_2_00x0214/* PA-RISC 2.0 big-endian. *//* Additional section indeces. */#defineSHN_PARISC_ANSI_COMMON0xff00/*SectionfortenativelydeclaredsymbolsinANSIC.*/#defineSHN_PARISC_HUGE_COMMON0xff01/* Common blocks in huge model. *//* Legal values for sh_type field of Elf32_Shdr. */#defineSHT_PARISC_EXT0x70000000/* Contains product specific ext. */#defineSHT_PARISC_UNWIND0x70000001/* Unwind information. */#defineSHT_PARISC_DOC0x70000002/* Debug info for optimized code. *//* Legal values for sh_flags field of Elf32_Shdr. */#defineSHF_PARISC_SHORT0x20000000/* Section with short addressing. */#defineSHF_PARISC_HUGE0x40000000/* Section far from gp. */#defineSHF_PARISC_SBP0x80000000/* Static branch prediction code. *//* Legal values for ST_TYPE subfield of st_info (symbol type). */#defineSTT_PARISC_MILLICODE13/* Millicode function entry point. */#defineSTT_HP_OPAQUE(STT_LOOS+0x1)#defineSTT_HP_STUB(STT_LOOS+0x2)/* HPPA relocs. */#defineR_PARISC_NONE0/* No reloc. */#defineR_PARISC_DIR321/* Direct 32-bit reference. */#defineR_PARISC_DIR21L2/* Left 21 bits of eff. address. */#defineR_PARISC_DIR17R3/* Right 17 bits of eff. address. */#defineR_PARISC_DIR17F4/* 17 bits of eff. address. */#defineR_PARISC_DIR14R6/* Right 14 bits of eff. address. */#defineR_PARISC_PCREL329/* 32-bit rel. address. */#defineR_PARISC_PCREL21L10/* Left 21 bits of rel. address. */#defineR_PARISC_PCREL17R11/* Right 17 bits of rel. address. */#defineR_PARISC_PCREL17F12/* 17 bits of rel. address. */#defineR_PARISC_PCREL14R14/* Right 14 bits of rel. address. */#defineR_PARISC_DPREL21L18/* Left 21 bits of rel. address. */#defineR_PARISC_DPREL14R22/* Right 14 bits of rel. address. */#defineR_PARISC_GPREL21L26/* GP-relative, left 21 bits. */#defineR_PARISC_GPREL14R30/* GP-relative, right 14 bits. */#defineR_PARISC_LTOFF21L34/* LT-relative, left 21 bits. */#defineR_PARISC_LTOFF14R38/* LT-relative, right 14 bits. */#defineR_PARISC_SECREL3241/* 32 bits section rel. address. */#defineR_PARISC_SEGBASE48/* No relocation, set segment base. */#defineR_PARISC_SEGREL3249/* 32 bits segment rel. address. */#defineR_PARISC_PLTOFF21L50/* PLT rel. address, left 21 bits. */#defineR_PARISC_PLTOFF14R54/* PLT rel. address, right 14 bits. */#defineR_PARISC_LTOFF_FPTR3257/* 32 bits LT-rel. function pointer. */#defineR_PARISC_LTOFF_FPTR21L58/* LT-rel. fct ptr, left 21 bits. */#defineR_PARISC_LTOFF_FPTR14R62/* LT-rel. fct ptr, right 14 bits. */#defineR_PARISC_FPTR6464/* 64 bits function address. */#defineR_PARISC_PLABEL3265/* 32 bits function address. */#defineR_PARISC_PCREL6472/* 64 bits PC-rel. address. */#defineR_PARISC_PCREL22F74/* 22 bits PC-rel. address. */#defineR_PARISC_PCREL14WR75/* PC-rel. address, right 14 bits. */#defineR_PARISC_PCREL14DR76/* PC rel. address, right 14 bits. */#defineR_PARISC_PCREL16F77/* 16 bits PC-rel. address. */#defineR_PARISC_PCREL16WF78/* 16 bits PC-rel. address. */#defineR_PARISC_PCREL16DF79/* 16 bits PC-rel. address. */#defineR_PARISC_DIR6480/* 64 bits of eff. address. */#defineR_PARISC_DIR14WR83/* 14 bits of eff. address. */#defineR_PARISC_DIR14DR84/* 14 bits of eff. address. */#defineR_PARISC_DIR16F85/* 16 bits of eff. address. */#defineR_PARISC_DIR16WF86/* 16 bits of eff. address. */#defineR_PARISC_DIR16DF87/* 16 bits of eff. address. */#defineR_PARISC_GPREL6488/* 64 bits of GP-rel. address. */#defineR_PARISC_GPREL14WR91/* GP-rel. address, right 14 bits. */#defineR_PARISC_GPREL14DR92/* GP-rel. address, right 14 bits. */#defineR_PARISC_GPREL16F93/* 16 bits GP-rel. address. */#defineR_PARISC_GPREL16WF94/* 16 bits GP-rel. address. */#defineR_PARISC_GPREL16DF95/* 16 bits GP-rel. address. */#defineR_PARISC_LTOFF6496/* 64 bits LT-rel. address. */#defineR_PARISC_LTOFF14WR99/* LT-rel. address, right 14 bits. */#defineR_PARISC_LTOFF14DR100/* LT-rel. address, right 14 bits. */#defineR_PARISC_LTOFF16F101/* 16 bits LT-rel. address. */#defineR_PARISC_LTOFF16WF102/* 16 bits LT-rel. address. */#defineR_PARISC_LTOFF16DF103/* 16 bits LT-rel. address. */#defineR_PARISC_SECREL64104/* 64 bits section rel. address. */#defineR_PARISC_SEGREL64112/* 64 bits segment rel. address. */#defineR_PARISC_PLTOFF14WR115/* PLT-rel. address, right 14 bits. */#defineR_PARISC_PLTOFF14DR116/* PLT-rel. address, right 14 bits. */#defineR_PARISC_PLTOFF16F117/* 16 bits LT-rel. address. */#defineR_PARISC_PLTOFF16WF118/* 16 bits PLT-rel. address. */#defineR_PARISC_PLTOFF16DF119/* 16 bits PLT-rel. address. */#defineR_PARISC_LTOFF_FPTR64120/* 64 bits LT-rel. function ptr. */#defineR_PARISC_LTOFF_FPTR14WR123/* LT-rel. fct. ptr., right 14 bits. */#defineR_PARISC_LTOFF_FPTR14DR124/* LT-rel. fct. ptr., right 14 bits. */#defineR_PARISC_LTOFF_FPTR16F125/* 16 bits LT-rel. function ptr. */#defineR_PARISC_LTOFF_FPTR16WF126/* 16 bits LT-rel. function ptr. */#defineR_PARISC_LTOFF_FPTR16DF127/* 16 bits LT-rel. function ptr. */#defineR_PARISC_LORESERVE128#defineR_PARISC_COPY128/* Copy relocation. */#defineR_PARISC_IPLT129/* Dynamic reloc, imported PLT */#defineR_PARISC_EPLT130/* Dynamic reloc, exported PLT */#defineR_PARISC_TPREL32153/* 32 bits TP-rel. address. */#defineR_PARISC_TPREL21L154/* TP-rel. address, left 21 bits. */#defineR_PARISC_TPREL14R158/* TP-rel. address, right 14 bits. */#defineR_PARISC_LTOFF_TP21L162/* LT-TP-rel. address, left 21 bits. */#defineR_PARISC_LTOFF_TP14R166/* LT-TP-rel. address, right 14 bits.*/#defineR_PARISC_LTOFF_TP14F167/* 14 bits LT-TP-rel. address. */#defineR_PARISC_TPREL64216/* 64 bits TP-rel. address. */#defineR_PARISC_TPREL14WR219/* TP-rel. address, right 14 bits. */#defineR_PARISC_TPREL14DR220/* TP-rel. address, right 14 bits. */#defineR_PARISC_TPREL16F221/* 16 bits TP-rel. address. */#defineR_PARISC_TPREL16WF222/* 16 bits TP-rel. address. */#defineR_PARISC_TPREL16DF223/* 16 bits TP-rel. address. */#defineR_PARISC_LTOFF_TP64224/* 64 bits LT-TP-rel. address. */#defineR_PARISC_LTOFF_TP14WR227/* LT-TP-rel. address, right 14 bits.*/#defineR_PARISC_LTOFF_TP14DR228/* LT-TP-rel. address, right 14 bits.*/#defineR_PARISC_LTOFF_TP16F229/* 16 bits LT-TP-rel. address. */#defineR_PARISC_LTOFF_TP16WF230/* 16 bits LT-TP-rel. address. */#defineR_PARISC_LTOFF_TP16DF231/* 16 bits LT-TP-rel. address. */#defineR_PARISC_HIRESERVE255/* Legal values for p_type field of Elf32_Phdr/Elf64_Phdr. */#definePT_HP_TLS(PT_LOOS+0x0)#definePT_HP_CORE_NONE(PT_LOOS+0x1)#definePT_HP_CORE_VERSION(PT_LOOS+0x2)#definePT_HP_CORE_KERNEL(PT_LOOS+0x3)#definePT_HP_CORE_COMM(PT_LOOS+0x4)#definePT_HP_CORE_PROC(PT_LOOS+0x5)#definePT_HP_CORE_LOADABLE(PT_LOOS+0x6)#definePT_HP_CORE_STACK(PT_LOOS+0x7)#definePT_HP_CORE_SHM(PT_LOOS+0x8)#definePT_HP_CORE_MMF(PT_LOOS+0x9)#definePT_HP_PARALLEL(PT_LOOS+0x10)#definePT_HP_FASTBIND(PT_LOOS+0x11)#definePT_HP_OPT_ANNOT(PT_LOOS+0x12)#definePT_HP_HSL_ANNOT(PT_LOOS+0x13)#definePT_HP_STACK(PT_LOOS+0x14)#definePT_PARISC_ARCHEXT0x70000000#definePT_PARISC_UNWIND0x70000001/* Legal values for p_flags field of Elf32_Phdr/Elf64_Phdr. */#definePF_PARISC_SBP0x08000000#definePF_HP_PAGE_SIZE0x00100000#definePF_HP_FAR_SHARED0x00200000#definePF_HP_NEAR_SHARED0x00400000#definePF_HP_CODE0x01000000#definePF_HP_MODIFY0x02000000#definePF_HP_LAZYSWAP0x04000000#definePF_HP_SBP0x08000000
Elf64_Addrr_offset;/* Location at which to apply the action */Elf64_Xwordr_info;/* index and type of relocation */Elf64_Sxwordr_addend;/* Constant addend used to compute value */
Elf64_Wordst_name;/* Symbol name, index in string tbl */unsignedcharst_info;/* Type and binding attributes */unsignedcharst_other;/* No defined meaning, 0 */Elf64_Halfst_shndx;/* Associated section index */Elf64_Addrst_value;/* Value of the symbol */Elf64_Xwordst_size;/* Associated symbol size */
/* special section indexes */#defineSHN_UNDEF0#defineSHN_LORESERVE0xff00#defineSHN_LOPROC0xff00#defineSHN_HIPROC0xff1f#defineSHN_ABS0xfff1#defineSHN_COMMON0xfff2#defineSHN_HIRESERVE0xffff
Elf64_Wordsh_name;/* Section name, index in string tbl */Elf64_Wordsh_type;/* Type of section */Elf64_Xwordsh_flags;/* Miscellaneous section attributes */Elf64_Addrsh_addr;/* Section virtual addr at execution */Elf64_Offsh_offset;/* Section file offset */Elf64_Xwordsh_size;/* Size of section in bytes */Elf64_Wordsh_link;/* Index of another section */Elf64_Wordsh_info;/* Additional section information */Elf64_Xwordsh_addralign;/* Section alignment */Elf64_Xwordsh_entsize;/* Entry size if section holds table */
/* Note header in a PT_NOTE section */typedefstructelf32_note{Elf32_Wordn_namesz;/* Name size */Elf32_Wordn_descsz;/* Content size */Elf32_Wordn_type;/* Content type */}Elf32_Nhdr;/* Note header in a PT_NOTE section */typedefstructelf64_note{