LLVM 19.0.0git
Classes | Namespaces | Typedefs | Enumerations
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/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_metadata
 
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
 
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::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 = content_iterator< DelayImportDirectoryEntryRef >
 
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::import_lookup_table_entry32 = import_lookup_table_entry< support::little32_t >
 
using llvm::object::import_lookup_table_entry64 = import_lookup_table_entry< support::little64_t >
 
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 }