LLDB mainline
ObjectFilePECOFF.cpp File Reference
#include "ObjectFilePECOFF.h"
#include "PECallFrameInfo.h"
#include "WindowsMiniDump.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/ModuleSpec.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/Section.h"
#include "lldb/Interpreter/OptionValueDictionary.h"
#include "lldb/Interpreter/OptionValueProperties.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Symbol/SaveCoreOptions.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/SectionLoadList.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/ArchSpec.h"
#include "lldb/Utility/DataBufferHeap.h"
#include "lldb/Utility/FileSpec.h"
#include "lldb/Utility/FileSpecList.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/StreamString.h"
#include "lldb/Utility/Timer.h"
#include "lldb/Utility/UUID.h"
#include "llvm/BinaryFormat/COFF.h"
#include "llvm/Object/COFFImportFile.h"
#include "llvm/Support/CRC.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/FormatAdapters.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/TargetParser/Host.h"
#include <optional>
#include "ObjectFilePECOFFProperties.inc"
#include "ObjectFilePECOFFPropertiesEnum.inc"

Go to the source code of this file.

Macros

#define IMAGE_DOS_SIGNATURE   0x5A4D
#define IMAGE_NT_SIGNATURE   0x00004550
#define OPT_HEADER_MAGIC_PE32   0x010b
#define OPT_HEADER_MAGIC_PE32_PLUS   0x020b
#define LLDB_PROPERTIES_objectfilepecoff
#define LLDB_PROPERTIES_objectfilepecoff

Functions

static PluginProperties & GetGlobalPluginProperties ()
static bool GetDebugLinkContents (const llvm::object::COFFObjectFile &coff_obj, std::string &gnu_debuglink_file, uint32_t &gnu_debuglink_crc)
static UUID GetCoffUUID (llvm::object::COFFObjectFile &coff_obj)
static bool RVASymbolListCompareRVA (const std::pair< uint32_t, uint32_t > &a, const std::pair< uint32_t, uint32_t > &b)

Macro Definition Documentation

◆ IMAGE_DOS_SIGNATURE

#define IMAGE_DOS_SIGNATURE   0x5A4D

◆ IMAGE_NT_SIGNATURE

#define IMAGE_NT_SIGNATURE   0x00004550

Definition at line 44 of file ObjectFilePECOFF.cpp.

Referenced by ObjectFilePECOFF::ParseHeader().

◆ LLDB_PROPERTIES_objectfilepecoff [1/2]

#define LLDB_PROPERTIES_objectfilepecoff

Definition at line 73 of file ObjectFilePECOFF.cpp.

◆ LLDB_PROPERTIES_objectfilepecoff [2/2]

#define LLDB_PROPERTIES_objectfilepecoff

Definition at line 73 of file ObjectFilePECOFF.cpp.

◆ OPT_HEADER_MAGIC_PE32

#define OPT_HEADER_MAGIC_PE32   0x010b

◆ OPT_HEADER_MAGIC_PE32_PLUS

#define OPT_HEADER_MAGIC_PE32_PLUS   0x020b

Definition at line 46 of file ObjectFilePECOFF.cpp.

Referenced by ObjectFilePECOFF::GetAddressByteSize().

Function Documentation

◆ GetCoffUUID()

◆ GetDebugLinkContents()

bool GetDebugLinkContents ( const llvm::object::COFFObjectFile & coff_obj,
std::string & gnu_debuglink_file,
uint32_t & gnu_debuglink_crc )
static

◆ GetGlobalPluginProperties()

PluginProperties & GetGlobalPluginProperties ( )
static

Definition at line 105 of file ObjectFilePECOFF.cpp.

◆ RVASymbolListCompareRVA()

bool RVASymbolListCompareRVA ( const std::pair< uint32_t, uint32_t > & a,
const std::pair< uint32_t, uint32_t > & b )
static