LLVM 22.0.0git
llvm::object::GOFFObjectFile Class Reference

#include "llvm/Object/GOFFObjectFile.h"

Inheritance diagram for llvm::object::GOFFObjectFile:
[legend]

Public Member Functions

Expected< StringRefgetSymbolName (SymbolRef Symbol) const
 GOFFObjectFile (MemoryBufferRef Object, Error &Err)
section_iterator section_begin () const override
section_iterator section_end () const override
uint8_t getBytesInAddress () const override
 The number of bytes used to represent an address in this object file format.
StringRef getFileFormatName () const override
Triple::ArchType getArch () const override
Expected< SubtargetFeaturesgetFeatures () const override
bool isRelocatableObject () const override
 True if this is a relocatable object (.o/.obj).
void moveSymbolNext (DataRefImpl &Symb) const override
basic_symbol_iterator symbol_begin () const override
basic_symbol_iterator symbol_end () const override
bool is64Bit () const override
bool isSectionNoLoad (DataRefImpl Sec) const
bool isSectionReadOnlyData (DataRefImpl Sec) const
bool isSectionZeroInit (DataRefImpl Sec) const
Public Member Functions inherited from llvm::object::ObjectFile
 ObjectFile ()=delete
 ObjectFile (const ObjectFile &other)=delete
ObjectFileoperator= (const ObjectFile &other)=delete
uint64_t getCommonSymbolSize (DataRefImpl Symb) const
virtual std::vector< SectionRefdynamic_relocation_sections () const
symbol_iterator_range symbols () const
section_iterator_range sections () const
virtual bool hasDebugInfo () const
virtual Triple::OSType getOS () const
virtual std::optional< StringReftryGetCPUName () const
virtual void setARMSubArch (Triple &TheTriple) const
virtual Expected< uint64_tgetStartAddress () const
Triple makeTriple () const
 Create a triple from the data in this object file.
virtual StringRef mapDebugSectionName (StringRef Name) const
 Maps a debug section name to a standard DWARF section name.
bool isReflectionSectionStrippable (llvm::binaryformat::Swift5ReflectionSectionKind ReflectionSectionKind) const
 True if the reflection section can be stripped by the linker.
Public Member Functions inherited from llvm::object::SymbolicFile
 SymbolicFile (unsigned int Type, MemoryBufferRef Source)
 ~SymbolicFile () override
basic_symbol_iterator_range symbols () const
Public Member Functions inherited from llvm::object::Binary
 Binary ()=delete
 Binary (const Binary &other)=delete
virtual ~Binary ()
virtual Error initContent ()
StringRef getData () const
StringRef getFileName () const
MemoryBufferRef getMemoryBufferRef () const
unsigned int getType () const
bool isObject () const
bool isSymbolic () const
bool isArchive () const
bool isMachOUniversalBinary () const
bool isTapiUniversal () const
bool isELF () const
bool isMachO () const
bool isCOFF () const
bool isXCOFF () const
bool isWasm () const
bool isOffloadFile () const
bool isCOFFImportFile () const
bool isIR () const
bool isGOFF () const
bool isMinidump () const
bool isTapiFile () const
bool isLittleEndian () const
bool isWinRes () const
bool isDXContainer () const
Triple::ObjectFormatType getTripleObjectFormat () const

Static Public Member Functions

static bool classof (const Binary *V)
Static Public Member Functions inherited from llvm::object::ObjectFile
static Expected< OwningBinary< ObjectFile > > createObjectFile (StringRef ObjectPath)
static Expected< std::unique_ptr< ObjectFile > > createObjectFile (MemoryBufferRef Object, llvm::file_magic Type, bool InitContent=true)
static Expected< std::unique_ptr< ObjectFile > > createObjectFile (MemoryBufferRef Object)
static bool classof (const Binary *v)
static Expected< std::unique_ptr< COFFObjectFile > > createCOFFObjectFile (MemoryBufferRef Object)
static Expected< std::unique_ptr< ObjectFile > > createXCOFFObjectFile (MemoryBufferRef Object, unsigned FileType)
static Expected< std::unique_ptr< ObjectFile > > createELFObjectFile (MemoryBufferRef Object, bool InitContent=true)
static Expected< std::unique_ptr< MachOObjectFile > > createMachOObjectFile (MemoryBufferRef Object, uint32_t UniversalCputype=0, uint32_t UniversalIndex=0, size_t MachOFilesetEntryOffset=0)
 Create a MachOObjectFile instance from a given buffer.
static Expected< std::unique_ptr< ObjectFile > > createGOFFObjectFile (MemoryBufferRef Object)
static Expected< std::unique_ptr< WasmObjectFile > > createWasmObjectFile (MemoryBufferRef Object)
static Expected< std::unique_ptr< DXContainerObjectFile > > createDXContainerObjectFile (MemoryBufferRef Object)
Static Public Member Functions inherited from llvm::object::SymbolicFile
static Expected< std::unique_ptr< SymbolicFile > > createSymbolicFile (MemoryBufferRef Object, llvm::file_magic Type, LLVMContext *Context, bool InitContent=true)
static Expected< std::unique_ptr< SymbolicFile > > createSymbolicFile (MemoryBufferRef Object)
static bool classof (const Binary *v)
static bool isSymbolicFile (file_magic Type, const LLVMContext *Context)
Static Public Member Functions inherited from llvm::object::Binary
static Error checkOffset (MemoryBufferRef M, uintptr_t Addr, const uint64_t Size)

Friends

class GOFFSymbolRef

Additional Inherited Members

Public Types inherited from llvm::object::ObjectFile
using symbol_iterator_range = iterator_range<symbol_iterator>
using section_iterator_range = iterator_range<section_iterator>
Public Types inherited from llvm::object::SymbolicFile
using basic_symbol_iterator_range = iterator_range<basic_symbol_iterator>
Protected Types inherited from llvm::object::Binary
enum  {
  ID_Archive , ID_MachOUniversalBinary , ID_COFFImportFile , ID_IR ,
  ID_TapiUniversal , ID_TapiFile , ID_Minidump , ID_WinRes ,
  ID_Offload , ID_StartObjects , ID_COFF , ID_XCOFF32 ,
  ID_XCOFF64 , ID_ELF32L , ID_ELF32B , ID_ELF64L ,
  ID_ELF64B , ID_MachO32L , ID_MachO32B , ID_MachO64L ,
  ID_MachO64B , ID_GOFF , ID_Wasm , ID_DXContainer ,
  ID_EndObjects
}
Protected Member Functions inherited from llvm::object::ObjectFile
 ObjectFile (unsigned int Type, MemoryBufferRef Source)
const uint8_tbase () const
Error printSymbolName (raw_ostream &OS, DataRefImpl Symb) const override
virtual uint32_t getSymbolAlignment (DataRefImpl Symb) const
virtual bool isSectionBitcode (DataRefImpl Sec) const
virtual bool isSectionStripped (DataRefImpl Sec) const
virtual bool isBerkeleyText (DataRefImpl Sec) const
virtual bool isBerkeleyData (DataRefImpl Sec) const
virtual bool isDebugSection (DataRefImpl Sec) const
virtual Expected< section_iteratorgetRelocatedSection (DataRefImpl Sec) const
virtual llvm::binaryformat::Swift5ReflectionSectionKind mapReflectionSectionNameToEnumValue (StringRef SectionName) const
Expected< uint64_tgetSymbolValue (DataRefImpl Symb) const
Protected Member Functions inherited from llvm::object::Binary
 Binary (unsigned int Type, MemoryBufferRef Source)
Static Protected Member Functions inherited from llvm::object::Binary
static unsigned int getELFType (bool isLE, bool is64Bits)
static unsigned int getMachOType (bool isLE, bool is64Bits)
Protected Attributes inherited from llvm::object::Binary
MemoryBufferRef Data

Detailed Description

Definition at line 32 of file GOFFObjectFile.h.

Constructor & Destructor Documentation

◆ GOFFObjectFile()

Member Function Documentation

◆ classof()

bool llvm::object::GOFFObjectFile::classof ( const Binary * V)
inlinestatic

Definition at line 51 of file GOFFObjectFile.h.

◆ getArch()

Triple::ArchType llvm::object::GOFFObjectFile::getArch ( ) const
inlineoverridevirtual

Implements llvm::object::ObjectFile.

Definition at line 59 of file GOFFObjectFile.h.

References llvm::Triple::systemz.

◆ getBytesInAddress()

uint8_t llvm::object::GOFFObjectFile::getBytesInAddress ( ) const
inlineoverridevirtual

The number of bytes used to represent an address in this object file format.

Implements llvm::object::ObjectFile.

Definition at line 55 of file GOFFObjectFile.h.

◆ getFeatures()

Expected< SubtargetFeatures > llvm::object::GOFFObjectFile::getFeatures ( ) const
inlineoverridevirtual

Implements llvm::object::ObjectFile.

Definition at line 61 of file GOFFObjectFile.h.

◆ getFileFormatName()

StringRef llvm::object::GOFFObjectFile::getFileFormatName ( ) const
inlineoverridevirtual

Implements llvm::object::ObjectFile.

Definition at line 57 of file GOFFObjectFile.h.

◆ getSymbolName()

Expected< StringRef > GOFFObjectFile::getSymbolName ( SymbolRef Symbol) const

Definition at line 213 of file GOFFObjectFile.cpp.

References getSymbolName(), and llvm::object::ObjectFile::SymbolRef.

Referenced by getSymbolName().

◆ is64Bit()

bool llvm::object::GOFFObjectFile::is64Bit ( ) const
inlineoverridevirtual

Implements llvm::object::SymbolicFile.

Definition at line 69 of file GOFFObjectFile.h.

◆ isRelocatableObject()

bool llvm::object::GOFFObjectFile::isRelocatableObject ( ) const
inlineoverridevirtual

True if this is a relocatable object (.o/.obj).

Implements llvm::object::ObjectFile.

Definition at line 63 of file GOFFObjectFile.h.

◆ isSectionNoLoad()

bool GOFFObjectFile::isSectionNoLoad ( DataRefImpl Sec) const

◆ isSectionReadOnlyData()

bool GOFFObjectFile::isSectionReadOnlyData ( DataRefImpl Sec) const

◆ isSectionZeroInit()

bool GOFFObjectFile::isSectionZeroInit ( DataRefImpl Sec) const

Definition at line 549 of file GOFFObjectFile.cpp.

◆ moveSymbolNext()

◆ section_begin()

section_iterator GOFFObjectFile::section_begin ( ) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 555 of file GOFFObjectFile.cpp.

References llvm::object::ObjectFile::SectionRef.

◆ section_end()

section_iterator GOFFObjectFile::section_end ( ) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 561 of file GOFFObjectFile.cpp.

References llvm::object::ObjectFile::SectionRef.

◆ symbol_begin()

basic_symbol_iterator GOFFObjectFile::symbol_begin ( ) const
overridevirtual

◆ symbol_end()

basic_symbol_iterator GOFFObjectFile::symbol_end ( ) const
overridevirtual

Implements llvm::object::SymbolicFile.

Definition at line 591 of file GOFFObjectFile.cpp.

References llvm::object::ObjectFile::SymbolRef.

◆ GOFFSymbolRef

friend class GOFFSymbolRef
friend

Definition at line 33 of file GOFFObjectFile.h.

References GOFFObjectFile(), GOFFSymbolRef, and llvm::object::ObjectFile::SymbolRef.

Referenced by GOFFSymbolRef.


The documentation for this class was generated from the following files: