LLVM 22.0.0git
|
#include "llvm/MC/MCGOFFObjectWriter.h"
Public Member Functions | |
GOFFObjectWriter (std::unique_ptr< MCGOFFObjectTargetWriter > MOTW, raw_pwrite_stream &OS) | |
~GOFFObjectWriter () override | |
void | recordRelocation (const MCFragment &F, const MCFixup &Fixup, MCValue Target, uint64_t &FixedValue) override |
Record a relocation entry. | |
uint64_t | writeObject () override |
Write the object file and returns the number of bytes written. | |
![]() | |
MCObjectWriter (const MCObjectWriter &)=delete | |
MCObjectWriter & | operator= (const MCObjectWriter &)=delete |
virtual | ~MCObjectWriter () |
virtual void | setAssembler (MCAssembler *A) |
MCContext & | getContext () const |
virtual void | reset () |
lifetime management | |
virtual void | executePostLayoutBinding () |
Perform any late binding of symbols (for example, to assign symbol indices for use when generating relocations). | |
bool | isSymbolRefDifferenceFullyResolved (const MCSymbol &A, const MCSymbol &B, bool InSet) const |
Check whether the difference (A - B) between two symbol references is fully resolved. | |
virtual bool | isSymbolRefDifferenceFullyResolvedImpl (const MCSymbol &SymA, const MCFragment &FB, bool InSet, bool IsPCRel) const |
MutableArrayRef< std::pair< std::string, size_t > > | getFileNames () |
void | addFileName (StringRef FileName) |
void | setCompilerVersion (StringRef CompilerVers) |
void | emitAddrsigSection () |
Tell the object writer to emit an address-significance table during writeObject(). | |
bool | getEmitAddrsigSection () |
void | addAddrsigSymbol (const MCSymbol *Sym) |
Record the given symbol in the address-significance table to be written diring writeObject(). | |
std::vector< const MCSymbol * > & | getAddrsigSyms () |
SmallVector< CGProfileEntry, 0 > & | getCGProfile () |
bool | getSubsectionsViaSymbols () const |
void | setSubsectionsViaSymbols (bool Value) |
Additional Inherited Members | |
![]() | |
MCObjectWriter ()=default | |
![]() | |
MCAssembler * | Asm = nullptr |
SmallVector< std::pair< std::string, size_t >, 0 > | FileNames |
List of declared file names. | |
std::string | CompilerVersion |
std::vector< const MCSymbol * > | AddrsigSyms |
bool | EmitAddrsigSection = false |
bool | SubsectionsViaSymbols = false |
SmallVector< CGProfileEntry, 0 > | CGProfile |
Definition at line 33 of file MCGOFFObjectWriter.h.
GOFFObjectWriter::GOFFObjectWriter | ( | std::unique_ptr< MCGOFFObjectTargetWriter > | MOTW, |
raw_pwrite_stream & | OS | ||
) |
Definition at line 519 of file GOFFObjectWriter.cpp.
|
override |
Definition at line 523 of file GOFFObjectWriter.cpp.
|
inlineoverridevirtual |
Record a relocation entry.
This routine is called by the assembler after layout and relaxation, and post layout binding. The implementation is responsible for storing information about the relocation so that it can be emitted during writeObject().
Reimplemented from llvm::MCObjectWriter.
Definition at line 46 of file MCGOFFObjectWriter.h.
|
overridevirtual |
Write the object file and returns the number of bytes written.
This routine is called by the assembler after layout and relaxation is complete, fixups have been evaluated and applied, and relocations generated.
Implements llvm::MCObjectWriter.
Definition at line 525 of file GOFFObjectWriter.cpp.
References llvm::MCObjectWriter::Asm, and Size.