LLVM: llvm::COFF Namespace Reference (original) (raw)
| Classes | |
|---|---|
| union | Auxiliary |
| struct | AuxiliarybfAndefSymbol |
| struct | AuxiliaryCLRToken |
| struct | AuxiliaryFunctionDefinition |
| struct | AuxiliarySectionDefinition |
| struct | AuxiliaryWeakExternal |
| struct | BigObjHeader |
| struct | DataDirectory |
| struct | DOSHeader |
| The DOS compatible header at the front of all PEs. More... | |
| struct | header |
| struct | ImportDirectoryTableEntry |
| The Import Directory Table. More... | |
| struct | ImportHeader |
| struct | ImportLookupTableEntry32 |
| The PE32 Import Lookup Table. More... | |
| struct | PE32Header |
| struct | relocation |
| struct | section |
| struct | symbol |
| Functions | |
|---|---|
| template<typename T> | |
| bool | isArm64EC (T Machine) |
| template<typename T> | |
| bool | isAnyArm64 (T Machine) |
| template<typename T> | |
| bool | is64Bit (T Machine) |
| bool | isReservedSectionNumber (int32_t SectionNumber) |
| LLVM_ABI bool | encodeSectionName (char *Out, uint64_t Offset) |
| Encode section name based on string table offset. | |
| Characteristics | operator| (Characteristics a, Characteristics b) |
| SectionCharacteristics | operator| (SectionCharacteristics a, SectionCharacteristics b) |
| DLLCharacteristics | operator| (DLLCharacteristics a, DLLCharacteristics b) |
| Variables | |
|---|---|
| const int32_t | MaxNumberOfSections16 = 65279 |
| static const char | PEMagic [] = {'P', 'E', '\0', '\0'} |
| static const char | BigObjMagic [] |
| static const char | ClGlObjMagic [] |
| static const char | WinResMagic [] |
◆ anonymous enum
| Enumerator |
|---|
| Header16Size |
| Header32Size |
| NameSize |
| Symbol16Size |
| Symbol32Size |
| SectionSize |
| RelocationSize |
Definition at line 55 of file COFF.h.
◆ Arm64ECThunkType
| Enumerator |
|---|
| GuestExit |
| Entry |
| Exit |
Definition at line 860 of file COFF.h.
◆ Arm64XFixupType
| Enumerator |
|---|
| IMAGE_DVRT_ARM64X_FIXUP_TYPE_ZEROFILL |
| IMAGE_DVRT_ARM64X_FIXUP_TYPE_VALUE |
| IMAGE_DVRT_ARM64X_FIXUP_TYPE_DELTA |
Definition at line 448 of file COFF.h.
◆ AuxSymbolType
| Enumerator |
|---|
| IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF |
Definition at line 283 of file COFF.h.
◆ BaseRelocationType
| Enumerator |
|---|
| IMAGE_REL_BASED_ABSOLUTE |
| IMAGE_REL_BASED_HIGH |
| IMAGE_REL_BASED_LOW |
| IMAGE_REL_BASED_HIGHLOW |
| IMAGE_REL_BASED_HIGHADJ |
| IMAGE_REL_BASED_MIPS_JMPADDR |
| IMAGE_REL_BASED_ARM_MOV32A |
| IMAGE_REL_BASED_ARM_MOV32T |
| IMAGE_REL_BASED_MIPS_JMPADDR16 |
| IMAGE_REL_BASED_DIR64 |
Definition at line 738 of file COFF.h.
◆ Characteristics
| Enumerator | |
|---|---|
| C_Invalid | |
| IMAGE_FILE_RELOCS_STRIPPED | The file does not contain base relocations and must be loaded at its preferred base. If this cannot be done, the loader will error. |
| IMAGE_FILE_EXECUTABLE_IMAGE | The file is valid and can be run. |
| IMAGE_FILE_LINE_NUMS_STRIPPED | COFF line numbers have been stripped. This is deprecated and should be |
| IMAGE_FILE_LOCAL_SYMS_STRIPPED | COFF symbol table entries for local symbols have been removed. This is deprecated and should be 0. |
| IMAGE_FILE_AGGRESSIVE_WS_TRIM | Aggressively trim working set. This is deprecated and must be 0. |
| IMAGE_FILE_LARGE_ADDRESS_AWARE | Image can handle > 2GiB addresses. |
| IMAGE_FILE_BYTES_REVERSED_LO | Little endian: the LSB precedes the MSB in memory. This is deprecated and should be 0. |
| IMAGE_FILE_32BIT_MACHINE | Machine is based on a 32bit word architecture. |
| IMAGE_FILE_DEBUG_STRIPPED | Debugging info has been removed. |
| IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP | If the image is on removable media, fully load it and copy it to swap. |
| IMAGE_FILE_NET_RUN_FROM_SWAP | If the image is on network media, fully load it and copy it to swap. |
| IMAGE_FILE_SYSTEM | The image file is a system file, not a user program. |
| IMAGE_FILE_DLL | The image file is a DLL. |
| IMAGE_FILE_UP_SYSTEM_ONLY | This file should only be run on a uniprocessor machine. |
| IMAGE_FILE_BYTES_REVERSED_HI | Big endian: the MSB precedes the LSB in memory. This is deprecated and should be 0. |
Definition at line 138 of file COFF.h.
◆ CodeViewIdentifiers
| Enumerator |
|---|
| DEBUG_SECTION_MAGIC |
| DEBUG_HASHES_SECTION_MAGIC |
Definition at line 838 of file COFF.h.
◆ COMDATType
| Enumerator |
|---|
| IMAGE_COMDAT_SELECT_NODUPLICATES |
| IMAGE_COMDAT_SELECT_ANY |
| IMAGE_COMDAT_SELECT_SAME_SIZE |
| IMAGE_COMDAT_SELECT_EXACT_MATCH |
| IMAGE_COMDAT_SELECT_ASSOCIATIVE |
| IMAGE_COMDAT_SELECT_LARGEST |
| IMAGE_COMDAT_SELECT_NEWEST |
Definition at line 454 of file COFF.h.
◆ DataDirectoryIndex
| Enumerator |
|---|
| EXPORT_TABLE |
| IMPORT_TABLE |
| RESOURCE_TABLE |
| EXCEPTION_TABLE |
| CERTIFICATE_TABLE |
| BASE_RELOCATION_TABLE |
| DEBUG_DIRECTORY |
| ARCHITECTURE |
| GLOBAL_PTR |
| TLS_TABLE |
| LOAD_CONFIG_TABLE |
| BOUND_IMPORT |
| IAT |
| DELAY_IMPORT_DESCRIPTOR |
| CLR_RUNTIME_HEADER |
| NUM_DATA_DIRECTORIES |
Definition at line 630 of file COFF.h.
◆ DebugType
| Enumerator |
|---|
| IMAGE_DEBUG_TYPE_UNKNOWN |
| IMAGE_DEBUG_TYPE_COFF |
| IMAGE_DEBUG_TYPE_CODEVIEW |
| IMAGE_DEBUG_TYPE_FPO |
| IMAGE_DEBUG_TYPE_MISC |
| IMAGE_DEBUG_TYPE_EXCEPTION |
| IMAGE_DEBUG_TYPE_FIXUP |
| IMAGE_DEBUG_TYPE_OMAP_TO_SRC |
| IMAGE_DEBUG_TYPE_OMAP_FROM_SRC |
| IMAGE_DEBUG_TYPE_BORLAND |
| IMAGE_DEBUG_TYPE_RESERVED10 |
| IMAGE_DEBUG_TYPE_CLSID |
| IMAGE_DEBUG_TYPE_VC_FEATURE |
| IMAGE_DEBUG_TYPE_POGO |
| IMAGE_DEBUG_TYPE_ILTCG |
| IMAGE_DEBUG_TYPE_MPX |
| IMAGE_DEBUG_TYPE_REPRO |
| IMAGE_DEBUG_TYPE_EX_DLLCHARACTERISTICS |
Definition at line 717 of file COFF.h.
◆ DLLCharacteristics
| Enumerator | |
|---|---|
| IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA | ASLR with 64 bit address space. |
| IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE | DLL can be relocated at load time. |
| IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY | Code integrity checks are enforced. Image is NX compatible. |
| IMAGE_DLL_CHARACTERISTICS_NX_COMPAT | |
| IMAGE_DLL_CHARACTERISTICS_NO_ISOLATION | Isolation aware, but do not isolate the image. |
| IMAGE_DLL_CHARACTERISTICS_NO_SEH | Does not use structured exception handling (SEH). No SEH handler may be called in this image. |
| IMAGE_DLL_CHARACTERISTICS_NO_BIND | Do not bind the image. Image should execute in an AppContainer. |
| IMAGE_DLL_CHARACTERISTICS_APPCONTAINER | A WDM driver. |
| IMAGE_DLL_CHARACTERISTICS_WDM_DRIVER | Image supports Control Flow Guard. |
| IMAGE_DLL_CHARACTERISTICS_GUARD_CF | |
| IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE | Terminal Server aware. |
Definition at line 669 of file COFF.h.
◆ DynamicRelocationType
| Enumerator |
|---|
| IMAGE_DYNAMIC_RELOCATION_GUARD_RF_PROLOGUE |
| IMAGE_DYNAMIC_RELOCATION_GUARD_RF_EPILOGUE |
| IMAGE_DYNAMIC_RELOCATION_GUARD_IMPORT_CONTROL_TRANSFER |
| IMAGE_DYNAMIC_RELOCATION_GUARD_INDIR_CONTROL_TRANSFER |
| IMAGE_DYNAMIC_RELOCATION_GUARD_SWITCHTABLE_BRANCH |
| IMAGE_DYNAMIC_RELOCATION_ARM64X |
Definition at line 439 of file COFF.h.
◆ ExtendedDLLCharacteristics
| Enumerator | |
|---|---|
| IMAGE_DLL_CHARACTERISTICS_EX_CET_COMPAT | Image is CET compatible. |
| IMAGE_DLL_CHARACTERISTICS_EX_CET_COMPAT_STRICT_MODE | Image is CET compatible in strict mode. |
| IMAGE_DLL_CHARACTERISTICS_EX_CET_SET_CONTEXT_IP_VALIDATION_RELAXED_MODE | Image is CET compatible in such a way that context IP validation is relaxed. |
| IMAGE_DLL_CHARACTERISTICS_EX_CET_DYNAMIC_APIS_ALLOW_IN_PROC_ONLY | Image is CET compatible in such a way that the use of dynamic APIs is restricted to processes only. |
| IMAGE_DLL_CHARACTERISTICS_EX_CET_RESERVED_1 | Reserved for future use. Not used by MSVC link.exe. |
| IMAGE_DLL_CHARACTERISTICS_EX_CET_RESERVED_2 | Reserved for future use. Not used by MSVC link.exe. |
| IMAGE_DLL_CHARACTERISTICS_EX_FORWARD_CFI_COMPAT | Image is CFI compatible. |
| IMAGE_DLL_CHARACTERISTICS_EX_HOTPATCH_COMPATIBLE | Image is hotpatch compatible. |
Definition at line 695 of file COFF.h.
◆ Feat00Flags
| Enumerator |
|---|
| SafeSEH |
| GuardStack |
| SDL |
| GuardCF |
| GuardEHCont |
| Kernel |
Definition at line 845 of file COFF.h.
◆ GuardFlags
| Enumerator | |
|---|---|
| CF_INSTRUMENTED | Module performs control flow integrity checks using system-supplied support. |
| CFW_INSTRUMENTED | Module performs control flow and write integrity checks. |
| CF_FUNCTION_TABLE_PRESENT | Module contains valid control flow target metadata. |
| SECURITY_COOKIE_UNUSED | Module does not make use of the /GS security cookie. |
| PROTECT_DELAYLOAD_IAT | Module supports read only delay load IAT. |
| DELAYLOAD_IAT_IN_ITS_OWN_SECTION | Delayload import table in its own .didat section (with nothing else in it) that can be freely reprotected. |
| CF_EXPORT_SUPPRESSION_INFO_PRESENT | Module contains suppressed export information. This also infers that the address taken IAT table is also present in the load config. |
| CF_ENABLE_EXPORT_SUPPRESSION | Module enables suppression of exports. |
| CF_LONGJUMP_TABLE_PRESENT | Module contains longjmp target information. |
| EH_CONTINUATION_TABLE_PRESENT | Module contains EH continuation target information. |
| CF_FUNCTION_TABLE_SIZE_MASK | Mask for the subfield that contains the stride of Control Flow Guard function table entries (that is, the additional count of bytes per table entry). |
| CF_FUNCTION_TABLE_SIZE_5BYTES | |
| CF_FUNCTION_TABLE_SIZE_6BYTES | |
| CF_FUNCTION_TABLE_SIZE_7BYTES | |
| CF_FUNCTION_TABLE_SIZE_8BYTES | |
| CF_FUNCTION_TABLE_SIZE_9BYTES | |
| CF_FUNCTION_TABLE_SIZE_10BYTES | |
| CF_FUNCTION_TABLE_SIZE_11BYTES | |
| CF_FUNCTION_TABLE_SIZE_12BYTES | |
| CF_FUNCTION_TABLE_SIZE_13BYTES | |
| CF_FUNCTION_TABLE_SIZE_14BYTES | |
| CF_FUNCTION_TABLE_SIZE_15BYTES | |
| CF_FUNCTION_TABLE_SIZE_16BYTES | |
| CF_FUNCTION_TABLE_SIZE_17BYTES | |
| CF_FUNCTION_TABLE_SIZE_18BYTES | |
| CF_FUNCTION_TABLE_SIZE_19BYTES |
Definition at line 776 of file COFF.h.
◆ ImportNameType
| Enumerator | |
|---|---|
| IMPORT_ORDINAL | Import is by ordinal. This indicates that the value in the Ordinal/Hint field of the import header is the import's ordinal. If this constant is not specified, then the Ordinal/Hint field should always be interpreted as the import's hint. |
| IMPORT_NAME | The import name is identical to the public symbol name. |
| IMPORT_NAME_NOPREFIX | The import name is the public symbol name, but skipping the leading ? , @, or optionally _. |
| IMPORT_NAME_UNDECORATE | The import name is the public symbol name, but skipping the leading ? , @, or optionally _, and truncating at the first . |
| IMPORT_NAME_EXPORTAS | The import name is specified as a separate string in the import library object file. |
Definition at line 757 of file COFF.h.
◆ ImportType
| Enumerator |
|---|
| IMPORT_CODE |
| IMPORT_DATA |
| IMPORT_CONST |
Definition at line 751 of file COFF.h.
◆ MachineTypes
| Enumerator |
|---|
| MT_Invalid |
| IMAGE_FILE_MACHINE_UNKNOWN |
| IMAGE_FILE_MACHINE_AM33 |
| IMAGE_FILE_MACHINE_AMD64 |
| IMAGE_FILE_MACHINE_ARM |
| IMAGE_FILE_MACHINE_ARMNT |
| IMAGE_FILE_MACHINE_ARM64 |
| IMAGE_FILE_MACHINE_ARM64EC |
| IMAGE_FILE_MACHINE_ARM64X |
| IMAGE_FILE_MACHINE_EBC |
| IMAGE_FILE_MACHINE_I386 |
| IMAGE_FILE_MACHINE_IA64 |
| IMAGE_FILE_MACHINE_M32R |
| IMAGE_FILE_MACHINE_MIPS16 |
| IMAGE_FILE_MACHINE_MIPSFPU |
| IMAGE_FILE_MACHINE_MIPSFPU16 |
| IMAGE_FILE_MACHINE_POWERPC |
| IMAGE_FILE_MACHINE_POWERPCFP |
| IMAGE_FILE_MACHINE_R4000 |
| IMAGE_FILE_MACHINE_RISCV32 |
| IMAGE_FILE_MACHINE_RISCV64 |
| IMAGE_FILE_MACHINE_RISCV128 |
| IMAGE_FILE_MACHINE_SH3 |
| IMAGE_FILE_MACHINE_SH3DSP |
| IMAGE_FILE_MACHINE_SH4 |
| IMAGE_FILE_MACHINE_SH5 |
| IMAGE_FILE_MACHINE_THUMB |
| IMAGE_FILE_MACHINE_WCEMIPSV2 |
Definition at line 93 of file COFF.h.
◆ RelocationTypeAMD64
| Enumerator |
|---|
| IMAGE_REL_AMD64_ABSOLUTE |
| IMAGE_REL_AMD64_ADDR64 |
| IMAGE_REL_AMD64_ADDR32 |
| IMAGE_REL_AMD64_ADDR32NB |
| IMAGE_REL_AMD64_REL32 |
| IMAGE_REL_AMD64_REL32_1 |
| IMAGE_REL_AMD64_REL32_2 |
| IMAGE_REL_AMD64_REL32_3 |
| IMAGE_REL_AMD64_REL32_4 |
| IMAGE_REL_AMD64_REL32_5 |
| IMAGE_REL_AMD64_SECTION |
| IMAGE_REL_AMD64_SECREL |
| IMAGE_REL_AMD64_SECREL7 |
| IMAGE_REL_AMD64_TOKEN |
| IMAGE_REL_AMD64_SREL32 |
| IMAGE_REL_AMD64_PAIR |
| IMAGE_REL_AMD64_SSPAN32 |
Definition at line 360 of file COFF.h.
◆ RelocationTypeI386
| Enumerator |
|---|
| IMAGE_REL_I386_ABSOLUTE |
| IMAGE_REL_I386_DIR16 |
| IMAGE_REL_I386_REL16 |
| IMAGE_REL_I386_DIR32 |
| IMAGE_REL_I386_DIR32NB |
| IMAGE_REL_I386_SEG12 |
| IMAGE_REL_I386_SECTION |
| IMAGE_REL_I386_SECREL |
| IMAGE_REL_I386_TOKEN |
| IMAGE_REL_I386_SECREL7 |
| IMAGE_REL_I386_REL32 |
Definition at line 346 of file COFF.h.
◆ RelocationTypesARM
| Enumerator |
|---|
| IMAGE_REL_ARM_ABSOLUTE |
| IMAGE_REL_ARM_ADDR32 |
| IMAGE_REL_ARM_ADDR32NB |
| IMAGE_REL_ARM_BRANCH24 |
| IMAGE_REL_ARM_BRANCH11 |
| IMAGE_REL_ARM_TOKEN |
| IMAGE_REL_ARM_BLX24 |
| IMAGE_REL_ARM_BLX11 |
| IMAGE_REL_ARM_REL32 |
| IMAGE_REL_ARM_SECTION |
| IMAGE_REL_ARM_SECREL |
| IMAGE_REL_ARM_MOV32A |
| IMAGE_REL_ARM_MOV32T |
| IMAGE_REL_ARM_BRANCH20T |
| IMAGE_REL_ARM_BRANCH24T |
| IMAGE_REL_ARM_BLX23T |
| IMAGE_REL_ARM_PAIR |
Definition at line 380 of file COFF.h.
◆ RelocationTypesARM64
| Enumerator |
|---|
| IMAGE_REL_ARM64_ABSOLUTE |
| IMAGE_REL_ARM64_ADDR32 |
| IMAGE_REL_ARM64_ADDR32NB |
| IMAGE_REL_ARM64_BRANCH26 |
| IMAGE_REL_ARM64_PAGEBASE_REL21 |
| IMAGE_REL_ARM64_REL21 |
| IMAGE_REL_ARM64_PAGEOFFSET_12A |
| IMAGE_REL_ARM64_PAGEOFFSET_12L |
| IMAGE_REL_ARM64_SECREL |
| IMAGE_REL_ARM64_SECREL_LOW12A |
| IMAGE_REL_ARM64_SECREL_HIGH12A |
| IMAGE_REL_ARM64_SECREL_LOW12L |
| IMAGE_REL_ARM64_TOKEN |
| IMAGE_REL_ARM64_SECTION |
| IMAGE_REL_ARM64_ADDR64 |
| IMAGE_REL_ARM64_BRANCH19 |
| IMAGE_REL_ARM64_BRANCH14 |
| IMAGE_REL_ARM64_REL32 |
Definition at line 400 of file COFF.h.
◆ RelocationTypesMips
| Enumerator |
|---|
| IMAGE_REL_MIPS_ABSOLUTE |
| IMAGE_REL_MIPS_REFHALF |
| IMAGE_REL_MIPS_REFWORD |
| IMAGE_REL_MIPS_JMPADDR |
| IMAGE_REL_MIPS_REFHI |
| IMAGE_REL_MIPS_REFLO |
| IMAGE_REL_MIPS_GPREL |
| IMAGE_REL_MIPS_LITERAL |
| IMAGE_REL_MIPS_SECTION |
| IMAGE_REL_MIPS_SECREL |
| IMAGE_REL_MIPS_SECRELLO |
| IMAGE_REL_MIPS_SECRELHI |
| IMAGE_REL_MIPS_JMPADDR16 |
| IMAGE_REL_MIPS_REFWORDNB |
| IMAGE_REL_MIPS_PAIR |
Definition at line 421 of file COFF.h.
◆ ResourceTypeID
| Enumerator |
|---|
| RID_Cursor |
| RID_Bitmap |
| RID_Icon |
| RID_Menu |
| RID_Dialog |
| RID_String |
| RID_FontDir |
| RID_Font |
| RID_Accelerator |
| RID_RCData |
| RID_MessageTable |
| RID_Group_Cursor |
| RID_Group_Icon |
| RID_Version |
| RID_DLGInclude |
| RID_PlugPlay |
| RID_VXD |
| RID_AniCursor |
| RID_AniIcon |
| RID_HTML |
| RID_Manifest |
Definition at line 178 of file COFF.h.
◆ SectionCharacteristics
| Enumerator |
|---|
| SC_Invalid |
| IMAGE_SCN_TYPE_NOLOAD |
| IMAGE_SCN_TYPE_NO_PAD |
| IMAGE_SCN_CNT_CODE |
| IMAGE_SCN_CNT_INITIALIZED_DATA |
| IMAGE_SCN_CNT_UNINITIALIZED_DATA |
| IMAGE_SCN_LNK_OTHER |
| IMAGE_SCN_LNK_INFO |
| IMAGE_SCN_LNK_REMOVE |
| IMAGE_SCN_LNK_COMDAT |
| IMAGE_SCN_GPREL |
| IMAGE_SCN_MEM_PURGEABLE |
| IMAGE_SCN_MEM_16BIT |
| IMAGE_SCN_MEM_LOCKED |
| IMAGE_SCN_MEM_PRELOAD |
| IMAGE_SCN_ALIGN_1BYTES |
| IMAGE_SCN_ALIGN_2BYTES |
| IMAGE_SCN_ALIGN_4BYTES |
| IMAGE_SCN_ALIGN_8BYTES |
| IMAGE_SCN_ALIGN_16BYTES |
| IMAGE_SCN_ALIGN_32BYTES |
| IMAGE_SCN_ALIGN_64BYTES |
| IMAGE_SCN_ALIGN_128BYTES |
| IMAGE_SCN_ALIGN_256BYTES |
| IMAGE_SCN_ALIGN_512BYTES |
| IMAGE_SCN_ALIGN_1024BYTES |
| IMAGE_SCN_ALIGN_2048BYTES |
| IMAGE_SCN_ALIGN_4096BYTES |
| IMAGE_SCN_ALIGN_8192BYTES |
| IMAGE_SCN_ALIGN_MASK |
| IMAGE_SCN_LNK_NRELOC_OVFL |
| IMAGE_SCN_MEM_DISCARDABLE |
| IMAGE_SCN_MEM_NOT_CACHED |
| IMAGE_SCN_MEM_NOT_PAGED |
| IMAGE_SCN_MEM_SHARED |
| IMAGE_SCN_MEM_EXECUTE |
| IMAGE_SCN_MEM_READ |
| IMAGE_SCN_MEM_WRITE |
Definition at line 298 of file COFF.h.
◆ SymbolBaseType
| Enumerator | |
|---|---|
| IMAGE_SYM_TYPE_NULL | No type information or unknown base type. |
| IMAGE_SYM_TYPE_VOID | Used with void pointers and functions. |
| IMAGE_SYM_TYPE_CHAR | A character (signed byte). |
| IMAGE_SYM_TYPE_SHORT | A 2-byte signed integer. |
| IMAGE_SYM_TYPE_INT | A natural integer type on the target. |
| IMAGE_SYM_TYPE_LONG | A 4-byte signed integer. |
| IMAGE_SYM_TYPE_FLOAT | A 4-byte floating-point number. |
| IMAGE_SYM_TYPE_DOUBLE | An 8-byte floating-point number. |
| IMAGE_SYM_TYPE_STRUCT | A structure. |
| IMAGE_SYM_TYPE_UNION | An union. |
| IMAGE_SYM_TYPE_ENUM | An enumerated type. |
| IMAGE_SYM_TYPE_MOE | A member of enumeration (a specific value). |
| IMAGE_SYM_TYPE_BYTE | A byte; unsigned 1-byte integer. |
| IMAGE_SYM_TYPE_WORD | A word; unsigned 2-byte integer. |
| IMAGE_SYM_TYPE_UINT | An unsigned integer of natural size. |
| IMAGE_SYM_TYPE_DWORD | An unsigned 4-byte integer. |
Definition at line 254 of file COFF.h.
◆ SymbolComplexType
| Enumerator | |
|---|---|
| IMAGE_SYM_DTYPE_NULL | No complex type; simple scalar variable. |
| IMAGE_SYM_DTYPE_POINTER | A pointer to base type. |
| IMAGE_SYM_DTYPE_FUNCTION | A function that returns a base type. |
| IMAGE_SYM_DTYPE_ARRAY | An array of base type. |
| SCT_COMPLEX_TYPE_SHIFT | Type is formed as (base + (derived << SCT_COMPLEX_TYPE_SHIFT)) |
Definition at line 273 of file COFF.h.
◆ SymbolSectionNumber
| Enumerator |
|---|
| IMAGE_SYM_DEBUG |
| IMAGE_SYM_ABSOLUTE |
| IMAGE_SYM_UNDEFINED |
Definition at line 211 of file COFF.h.
◆ SymbolStorageClass
Storage class tells where and what the symbol represents.
| Enumerator | |
|---|---|
| SSC_Invalid | |
| IMAGE_SYM_CLASS_END_OF_FUNCTION | Physical end of function. |
| IMAGE_SYM_CLASS_NULL | No symbol. |
| IMAGE_SYM_CLASS_AUTOMATIC | Stack variable. |
| IMAGE_SYM_CLASS_EXTERNAL | External symbol. |
| IMAGE_SYM_CLASS_STATIC | Static. |
| IMAGE_SYM_CLASS_REGISTER | Register variable. |
| IMAGE_SYM_CLASS_EXTERNAL_DEF | External definition. |
| IMAGE_SYM_CLASS_LABEL | Label. |
| IMAGE_SYM_CLASS_UNDEFINED_LABEL | Undefined label. |
| IMAGE_SYM_CLASS_MEMBER_OF_STRUCT | Member of structure. |
| IMAGE_SYM_CLASS_ARGUMENT | Function argument. |
| IMAGE_SYM_CLASS_STRUCT_TAG | Structure tag. |
| IMAGE_SYM_CLASS_MEMBER_OF_UNION | Member of union. |
| IMAGE_SYM_CLASS_UNION_TAG | Union tag. |
| IMAGE_SYM_CLASS_TYPE_DEFINITION | Type definition. |
| IMAGE_SYM_CLASS_UNDEFINED_STATIC | Undefined static. |
| IMAGE_SYM_CLASS_ENUM_TAG | Enumeration tag. |
| IMAGE_SYM_CLASS_MEMBER_OF_ENUM | Member of enumeration. |
| IMAGE_SYM_CLASS_REGISTER_PARAM | Register parameter. |
| IMAGE_SYM_CLASS_BIT_FIELD | Bit field. |
| IMAGE_SYM_CLASS_BLOCK | ".bb" or ".eb" - beginning or end of block |
| IMAGE_SYM_CLASS_FUNCTION | ".bf" or ".ef" - beginning or end of function |
| IMAGE_SYM_CLASS_END_OF_STRUCT | End of structure. |
| IMAGE_SYM_CLASS_FILE | File name. |
| IMAGE_SYM_CLASS_SECTION | Line number, reformatted as symbol. |
| IMAGE_SYM_CLASS_WEAK_EXTERNAL | Duplicate tag. |
| IMAGE_SYM_CLASS_CLR_TOKEN | External symbol in dmert public lib. |
Definition at line 218 of file COFF.h.
◆ WeakExternalCharacteristics
| Enumerator |
|---|
| IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY |
| IMAGE_WEAK_EXTERN_SEARCH_LIBRARY |
| IMAGE_WEAK_EXTERN_SEARCH_ALIAS |
| IMAGE_WEAK_EXTERN_ANTI_DEPENDENCY |
Definition at line 487 of file COFF.h.
◆ WindowsSubsystem
| Enumerator | |
|---|---|
| IMAGE_SUBSYSTEM_UNKNOWN | An unknown subsystem. |
| IMAGE_SUBSYSTEM_NATIVE | Device drivers and native Windows processes. |
| IMAGE_SUBSYSTEM_WINDOWS_GUI | The Windows GUI subsystem. |
| IMAGE_SUBSYSTEM_WINDOWS_CUI | The Windows character subsystem. |
| IMAGE_SUBSYSTEM_OS2_CUI | The OS/2 character subsystem. |
| IMAGE_SUBSYSTEM_POSIX_CUI | The POSIX character subsystem. |
| IMAGE_SUBSYSTEM_NATIVE_WINDOWS | Native Windows 9x driver. |
| IMAGE_SUBSYSTEM_WINDOWS_CE_GUI | Windows CE. |
| IMAGE_SUBSYSTEM_EFI_APPLICATION | An EFI application. |
| IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER | An EFI driver with boot services. |
| IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER | An EFI driver with run-time services. |
| IMAGE_SUBSYSTEM_EFI_ROM | An EFI ROM image. |
| IMAGE_SUBSYSTEM_XBOX | XBOX. |
| IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION | A BCD application. |
Definition at line 650 of file COFF.h.
◆ encodeSectionName()
Encode section name based on string table offset.
The size of Out must be at least COFF::NameSize.
Definition at line 39 of file COFF.cpp.
References assert(), llvm::Twine::concat(), llvm::SmallVectorTemplateCommon< T, typename >::data(), encodeBase64StringEntry(), Max7DecimalOffset, MaxBase64Offset, NameSize, llvm::Offset, llvm::SmallVectorTemplateCommon< T, typename >::size(), and llvm::Twine::toVector().
◆ is64Bit()
template<typename T>
| bool llvm::COFF::is64Bit | ( | T | Machine | ) |
|---|
◆ isAnyArm64()
template<typename T>
| bool llvm::COFF::isAnyArm64 | ( | T | Machine | ) |
|---|
◆ isArm64EC()
template<typename T>
| bool llvm::COFF::isArm64EC | ( | T | Machine | ) |
|---|
◆ isReservedSectionNumber()
| bool llvm::COFF::isReservedSectionNumber ( int32_t SectionNumber) | inline |
|---|
◆ operator|() [1/3]
| Characteristics llvm::COFF::operator| ( Characteristics a, Characteristics b ) | inline |
|---|
◆ operator|() [2/3]
| DLLCharacteristics llvm::COFF::operator| ( DLLCharacteristics a, DLLCharacteristics b ) | inline |
|---|
◆ operator|() [3/3]
| SectionCharacteristics llvm::COFF::operator| ( SectionCharacteristics a, SectionCharacteristics b ) | inline |
|---|
◆ BigObjMagic
Initial value:
= {
'\xc7', '\xa1', '\xba', '\xd1', '\xee', '\xba', '\xa9', '\x4b',
'\xaf', '\x20', '\xfa', '\xf6', '\x6a', '\xa4', '\xdc', '\xb8',
}
Definition at line 38 of file COFF.h.
Referenced by llvm::jitlink::createLinkGraphFromCOFFObject(), llvm::identify_magic(), and writeCOFF().
◆ ClGlObjMagic
Initial value:
= {
'\x38', '\xfe', '\xb3', '\x0c', '\xa5', '\xd9', '\xab', '\x4d',
'\xac', '\x9b', '\xd6', '\xb6', '\x22', '\x26', '\x53', '\xc2',
}
Definition at line 43 of file COFF.h.
Referenced by llvm::identify_magic().
◆ MaxNumberOfSections16
const int32_t llvm::COFF::MaxNumberOfSections16 = 65279
◆ PEMagic
| const char llvm::COFF::PEMagic[] = {'P', 'E', '\0', '\0'} | static |
|---|
◆ WinResMagic
Initial value:
= {
'\x00', '\x00', '\x00', '\x00', '\x20', '\x00', '\x00', '\x00',
'\xff', '\xff', '\x00', '\x00', '\xff', '\xff', '\x00', '\x00',
}
Definition at line 49 of file COFF.h.
Referenced by llvm::identify_magic().