LLVM 22.0.0git
COFF.h File Reference
#include "llvm/ADT/iterator_range.h"
#include "llvm/BinaryFormat/COFF.h"
#include "llvm/Object/Binary.h"
#include "llvm/Object/CVDebugRecord.h"
#include "llvm/Object/Error.h"
#include "llvm/Object/ObjectFile.h"
#include "llvm/Support/BinaryByteStream.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ConvertUTF.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/TargetParser/SubtargetFeature.h"
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <system_error>

Go to the source code of this file.

Classes

struct  llvm::object::dos_header
 The DOS compatible header at the front of all PE/COFF executables. More...
struct  llvm::object::coff_file_header
struct  llvm::object::coff_bigobj_file_header
struct  llvm::object::pe32_header
 The 32-bit PE header that follows the COFF header. More...
struct  llvm::object::pe32plus_header
 The 64-bit PE header that follows the COFF header. More...
struct  llvm::object::data_directory
struct  llvm::object::debug_directory
struct  llvm::object::import_lookup_table_entry< IntTy >
struct  llvm::object::delay_import_directory_table_entry
struct  llvm::object::export_directory_table_entry
union  llvm::object::export_address_table_entry
struct  llvm::object::StringTableOffset
struct  llvm::object::coff_symbol< SectionNumberType >
struct  llvm::object::coff_symbol_generic
class  llvm::object::COFFSymbolRef
struct  llvm::object::coff_section
struct  llvm::object::coff_relocation
struct  llvm::object::coff_aux_function_definition
struct  llvm::object::coff_aux_bf_and_ef_symbol
struct  llvm::object::coff_aux_weak_external
struct  llvm::object::coff_aux_section_definition
struct  llvm::object::coff_aux_clr_token
struct  llvm::object::coff_import_header
struct  llvm::object::coff_import_directory_table_entry
struct  llvm::object::coff_tls_directory< IntTy >
struct  llvm::object::coff_load_config_code_integrity
struct  llvm::object::coff_load_configuration32
 32-bit load config (IMAGE_LOAD_CONFIG_DIRECTORY32) More...
struct  llvm::object::coff_load_configuration64
 64-bit load config (IMAGE_LOAD_CONFIG_DIRECTORY64) More...
struct  llvm::object::chpe_range_entry
struct  llvm::object::chpe_code_range_entry
struct  llvm::object::chpe_redirection_entry
struct  llvm::object::coff_runtime_function_x64
struct  llvm::object::coff_base_reloc_block_header
struct  llvm::object::coff_base_reloc_block_entry
struct  llvm::object::coff_resource_dir_entry
struct  llvm::object::coff_resource_data_entry
struct  llvm::object::coff_resource_dir_table
struct  llvm::object::debug_h_header
struct  llvm::object::coff_dynamic_reloc_table
struct  llvm::object::coff_dynamic_relocation32
struct  llvm::object::coff_dynamic_relocation64
struct  llvm::object::coff_dynamic_relocation32_v2
struct  llvm::object::coff_dynamic_relocation64_v2
class  llvm::object::COFFObjectFile
class  llvm::object::ImportDirectoryEntryRef
class  llvm::object::DelayImportDirectoryEntryRef
class  llvm::object::ExportDirectoryEntryRef
class  llvm::object::ImportedSymbolRef
class  llvm::object::BaseRelocRef
class  llvm::object::DynamicRelocRef
class  llvm::object::Arm64XRelocRef
class  llvm::object::ResourceSectionRef
struct  llvm::object::FpoData
class  llvm::object::SectionStrippedError

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::object

Typedefs

using llvm::object::import_directory_iterator = content_iterator<ImportDirectoryEntryRef>
using llvm::object::delay_import_directory_iterator
using llvm::object::export_directory_iterator = content_iterator<ExportDirectoryEntryRef>
using llvm::object::imported_symbol_iterator = content_iterator<ImportedSymbolRef>
using llvm::object::base_reloc_iterator = content_iterator<BaseRelocRef>
using llvm::object::dynamic_reloc_iterator = content_iterator<DynamicRelocRef>
using llvm::object::arm64x_reloc_iterator = content_iterator<Arm64XRelocRef>
using llvm::object::import_lookup_table_entry32
using llvm::object::import_lookup_table_entry64
using llvm::object::export_name_pointer_table_entry = support::ulittle32_t
using llvm::object::export_ordinal_table_entry = support::ulittle16_t
using llvm::object::coff_symbol16 = coff_symbol<support::ulittle16_t>
using llvm::object::coff_symbol32 = coff_symbol<support::ulittle32_t>
using llvm::object::coff_tls_directory32 = coff_tls_directory<support::little32_t>
using llvm::object::coff_tls_directory64 = coff_tls_directory<support::little64_t>

Enumerations

enum class  llvm::object::frame_type : uint16_t { llvm::object::Fpo = 0 , llvm::object::Trap = 1 , llvm::object::Tss = 2 , llvm::object::NonFpo = 3 }
enum  llvm::object::chpe_range_type { llvm::object::Arm64 = 0 , llvm::object::Arm64EC = 1 , llvm::object::Amd64 = 2 }