!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ LThe symbol table entries consist of index information to be read from other L parts of the ELF file. Some of this information is automatically retrieved K for your convenience (including symbol name, description of the enclosing  section, and definition).  Section from steIndex !"#$!Section in which the def is held %&'(9Some other flag, the Int is the bit number for the flag. )Read permission *Write permission +Execute permission ,Segment Types. -Some other type .Program header table / Reserved 0Note sectionks 1Program interpreter path name 2Dynamic linking tables 3Loadable segment 4 Unused entry 567 Segment type 8Segment flags 9 Virtual address for the segment :!Physical address for the segment ;Segment alignment <Data for the segment =/Size in memory (may be larger then the segment's data) >?Other @HMicroprocessor series from PKU-Unity Ltd. and MPRC of Peking University AArca RISC Microprocessor BSharp embedded microprocessor C'S1C33 Family of Seiko Epson processors D(Analog Devices Blackfin (DSP) processor E2Texas Instruments embedded microcontroller msp430 FFujitsu F2MC16 G2National Semiconductor CompactRISC microprocessor HMAX Processor I%Ubicom IP2xxx microcontroller family J6STMicroelectronics (www.st.com) ST200 microcontroller KTrebia SNP 1000 processor LTenor Network TPC processor M$National Semiconductor 32000 series N.Thompson Multimedia General Purpose Processor O Alphamosaic VideoCore processor PTensilica Xtensa Architecture QARC Cores Tangent-A5 R#OpenRISC 32-bit embedded processor S picoJava TMatsushita MN10200 UMatsushita MN10300 VMitsubishi M32R W NEC v850 XMitsubishi D30V YMitsubishi D10V Z Fujitsu FR30 [ Atmel AVR 8-bit microcontroller \ SiTera Prism ]4Harvard University machine-independent object files ^ Donald Knuth's educational 64-bit processor _LSI Logic 16-bit DSP Processor ` Element 14 64-bit DSP Processor a0Infineon Technologies 32-bit embedded processor b.Axis Communications 32-bit embedded processor c Digital VAX d.STMicroelectronics ST19 8-bit microcontroller eSilicon Graphics SVx f"Motorola MC68HC05 Microcontroller g"Motorola MC68HC08 Microcontroller h"Motorola MC68HC11 Microcontroller i"Motorola MC68HC16 Microcontroller j-STMicroelectronics ST7 8-bit microcontroller kSTMicroelectronics ST9+ 8/16 bit microcontroller lSiemens FX66 microcontroller mSony DSP Processor nAMD x86-64 architecture o5Advanced Logic Corp. TinyJ embedded processor family p#STMicroelectronics ST100 processor qToyota ME16 processor rMotorola Star*Core processor sDenso NDR1 microprocessor t"Sony nCPU embedded RISC processor u Siemens PCP v#Fujitsu MMA Multimedia Accelerator wMotorola M68HC12 xMotorola ColdFire yStanford MIPS-X z#Intel IA-64 processor architecture { Hitachi H8/500 | Hitachi H8S } Hitachi H8/300H ~ Hitachi H8/300 /Argonaut RISC Core, Argonaut Technologies Inc. #Siemens TriCore embedded processor SPARC Version 9  Hitachi SH Digital Alpha Advanced RISC Machines ARM  Motorola RCE  TRW RH-32  Fujitsu FR20  NEC V800  Cell SPU  IBM System/390 Processor 64-bit PowerPC PowerPC  Intel 80960 Enhanced instruction set SPARC Fujitsu VPP500 Hewlett-Packard PA-RISC  SPARC 64-bit MIPS RS3000 Little-endian  IBM System/370 Processor MIPS I Architecture  Intel 80860 !Intel i486 (DO NOT USE THIS ONE) Motorola 88000 Motorola 68000  Intel 80386 SPARC AT& T WE 32100  No machine Other Core dump object file Shared object file Executable object file Relocatable object file Unspecified type Other "Standalone (embedded) application ARM Amiga Research OS  Hewlett-Packard Non-Stop Kernel  Open VMS  Open BSD Novell Modesto Compaq TRU64 UNIX FreeBSD IRIX AIX  Sun Solaris Linux NetBSD Hewlett-Packard HP-UX No extensions or unspecified Big-endian ELF format Little-endian ELF format 64-bit ELF format 32-bit ELF format (Processor- or environment-specific flag )Section contains executable instructions 0Section is allocated in memory image of program Section contains writable data (Processor- or environment-specific type 'Contains a dynamic loader symbol table  Reserved  Contains Rel type relocation entries DContains uninitialized space; does not occupy any space in the file Contains note information  Contains dynamic linking tables Contains a symbol hash table  Contains Rela type relocation entries Contains a string table Contains a linker symbol table ,Contains information defined by the program $Identifies an empty section header. $Identifies the name of the section. $Identifies the type of the section. *Identifies the attributes of the section. vThe virtual address of the beginning of the section in memory. 0 for sections that are not loaded into target memory. ]The size of the section. Except for SHT_NOBITS sections, this is the size of elfSectionData. NContains a section index of an associated section, depending on section type. =Contains extra information for the index, depending on type. HContains the required alignment of the section. Must be a power of two. (Size of entries if section has a table. The raw data for the section. )Identifies the class of the object file. 1Identifies the data encoding of the object file. 2Identifies the version of the object file format. JIdentifies the operating system and ABI for which the object is prepared. =Identifies the ABI version for which the object is prepared. !Identifies the object file type. $Identifies the target architecture. GVirtual address of the program entry point. 0 for non-executable Elfs. List of sections in the file. List of segments in the file. aParses a ByteString into an Elf record. Parse failures call error. 32-bit ELF objects have their S fields promoted to 64-bit so that the 32- and 64-bit ELF records can be the same. GParse the symbol table section into a list of symbol table entries. If : no symbol table is found then an empty list is returned. T This function does not consult flags to look for SHT_STRTAB (when naming symbols), * it just looks for particular sections of .strtab and  .shstrtab. =Assumes the given section is a symbol table, type SHT_SYMTAB $ (guaranteed by parseSymbolTables). 9Use the symbol offset and size to extract its definition  (in the form of a ByteString). 4 If the size is zero, or the offset larger than the ,  then  is returned. @Gets a single entry from the symbol table, use with runGetMany. .Given a section name, extract the ElfSection.   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~56789:;<=,43210/.-'+*)(>~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@? !"#$%&        !"#$%& !"#$%&'+*)(()*+,43210/.--./0123456789:;<=6789:;<=>^~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@??@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       !"#$%&'()*+,-./01234567789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~elf-0.26Data.ElfElfSectionIndexSHNIndex SHNCommonSHNAbsSHNHiOS SHNCustomOSSHNLoOS SHNHiProc SHNCustomProc SHNLoProcSHNUndef ElfSymbolType STTHiProc STTLoProcSTTHiOSSTTLoOSSTTFile STTSectionSTTFunc STTObject STTNoTypeElfSymbolBinding STBHiProc STBLoProcSTBHiOSSTBLoOSSTBWeak STBGlobalSTBLocalElfSymbolTableEntryESTsteNamesteEnclosingSectionsteTypesteBindsteOthersteIndexsteValuesteSizeElfSegmentFlagPF_ExtPF_RPF_WPF_XElfSegmentTypePT_OtherPT_PHDRPT_SHLIBPT_NOTE PT_INTERP PT_DYNAMICPT_LOADPT_NULL ElfSegmentelfSegmentTypeelfSegmentFlagselfSegmentVirtAddrelfSegmentPhysAddrelfSegmentAlignelfSegmentDataelfSegmentMemSize ElfMachineEM_EXT EM_UNICOREEM_ARCAEM_SEP EM_SE_C33 EM_BLACKFIN EM_MSP430 EM_F2MC16EM_CREM_MAXEM_IP2KEM_ST200EM_SNP1KEM_TPCEM_NS32K EM_TMM_GPP EM_VIDEOCORE EM_XTENSA EM_ARC_A5 EM_OPENRISCEM_PJ EM_MN10200 EM_MN10300EM_M32REM_V850EM_D30VEM_D10VEM_FR30EM_AVREM_PRISMEM_HUANYEM_MMIXEM_ZSP EM_FIREPATH EM_JAVELINEM_CRISEM_VAXEM_ST19EM_SVX EM_68HC05 EM_68HC08 EM_68HC11 EM_68HC16EM_ST7 EM_ST9PLUSEM_FX66EM_PDSP EM_X86_64EM_TINYJEM_ST100EM_ME16 EM_STARCOREEM_NDR1EM_NCPUEM_PCPEM_MMA EM_68HC12 EM_COLDFIRE EM_MIPS_XEM_IA_64 EM_H8_500EM_H8S EM_H8_300H EM_H8_300EM_ARC EM_TRICORE EM_SPARCV9EM_SHEM_ALPHAEM_ARMEM_RCEEM_RH32EM_FR20EM_V800EM_SPUEM_S390EM_PPC64EM_PPCEM_960EM_SPARC32PLUS EM_VPP500 EM_PARISC EM_SPARC64EM_MIPS_RS3_LEEM_S370EM_MIPSEM_860EM_486EM_88KEM_68KEM_386EM_SPARCEM_M32EM_NONEElfTypeET_EXTET_COREET_DYNET_EXECET_RELET_NONEElfOSABI ELFOSABI_EXTELFOSABI_STANDALONE ELFOSABI_ARM ELFOSABI_AROS ELFOSABI_NSKELFOSABI_OPENVMSELFOSABI_OPENBSDELFOSABI_MODESTOELFOSABI_TRU64ELFOSABI_FREEBSD ELFOSABI_IRIX ELFOSABI_AIXELFOSABI_SOLARISELFOSABI_LINUXELFOSABI_NETBSD ELFOSABI_HPUX ELFOSABI_SYSVElfData ELFDATA2MSB ELFDATA2LSBElfClass ELFCLASS64 ELFCLASS32ElfSectionFlagsSHF_EXT SHF_EXECINSTR SHF_ALLOC SHF_WRITEElfSectionTypeSHT_EXT SHT_DYNSYM SHT_SHLIBSHT_REL SHT_NOBITSSHT_NOTE SHT_DYNAMICSHT_HASHSHT_RELA SHT_STRTAB SHT_SYMTAB SHT_PROGBITSSHT_NULL ElfSectionelfSectionNameelfSectionTypeelfSectionFlagselfSectionAddrelfSectionSizeelfSectionLinkelfSectionInfoelfSectionAddrAlignelfSectionEntSizeelfSectionDataElfelfClasselfData elfVersionelfOSABI elfABIVersionelfType elfMachineelfEntry elfSections elfSegmentsparseElfparseSymbolTablesfindSymbolDefinition ElfReader getWord16 getWord32 getWord64 TableInfo tableOffset entrySizeentryNumgetElf_Shdr_OffsetSize getElf_Shdr getElf_EhdrdivideparseElfSegmentTypeparseElfSegmentEntryparseElfSegmentFlagsgetSymbolTableEntriesbase Data.MaybeNothing runGetManysymbolTableSectionsgetSymbolTableEntrysectionByIndexinfoToTypeAndBindfindSectionByName stringByIndex