9#ifndef LLVM_MC_MCWINCOFFOBJECTWRITER_H 
   10#define LLVM_MC_MCWINCOFFOBJECTWRITER_H 
   24  virtual void anchor();
 
   26  const unsigned Machine;
 
 
   51  std::unique_ptr<MCWinCOFFObjectTargetWriter> TargetObjectWriter;
 
   52  std::unique_ptr<WinCOFFWriter> ObjWriter, DwoWriter;
 
   53  bool IncrementalLinkerCompatible = 
false;
 
   62  void reset() 
override;
 
   65    IncrementalLinkerCompatible = 
Value;
 
 
   70                                              bool IsPCRel) 
const override;
 
 
   82std::unique_ptr<MCObjectWriter>
 
   84                          raw_pwrite_stream &OS);
 
   86std::unique_ptr<MCObjectWriter>
 
   88                             raw_pwrite_stream &OS, raw_pwrite_stream &DwoOS);
 
PowerPC TLS Dynamic Call Fixup
 
Generic interface to target specific assembler backends.
 
Context object for machine code objects.
 
Encode information on a single operation to perform on a byte sequence (e.g., an encoded instruction)...
 
Base class for classes that define behaviour that is specific to both the target and the object forma...
 
Instances of this class represent a uniqued identifier for a section in the current translation unit.
 
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
 
virtual bool recordRelocation(const MCFixup &) const
 
MCWinCOFFObjectTargetWriter(unsigned Machine_)
 
~MCWinCOFFObjectTargetWriter() override=default
 
static bool classof(const MCObjectTargetWriter *W)
 
virtual unsigned getRelocType(MCContext &Ctx, const MCValue &Target, const MCFixup &Fixup, bool IsCrossSection, const MCAsmBackend &MAB) const =0
 
unsigned getMachine() const
 
Triple::ObjectFormatType getFormat() const override
 
Target - Wrapper for Target specific information.
 
LLVM Value Representation.
 
void recordRelocation(const MCFragment &F, const MCFixup &Fixup, MCValue Target, uint64_t &FixedValue) override
Record a relocation entry.
 
void reset() override
lifetime management
 
int getSectionNumber(const MCSection &Section) const
 
void setAssembler(MCAssembler *Asm) override
 
WinCOFFObjectWriter(std::unique_ptr< MCWinCOFFObjectTargetWriter > MOTW, raw_pwrite_stream &OS)
 
void executePostLayoutBinding() override
Perform any late binding of symbols (for example, to assign symbol indices for use when generating re...
 
friend class WinCOFFWriter
 
uint64_t writeObject() override
Write the object file and returns the number of bytes written.
 
void setIncrementalLinkerCompatible(bool Value)
 
bool isSymbolRefDifferenceFullyResolvedImpl(const MCSymbol &SymA, const MCFragment &FB, bool InSet, bool IsPCRel) const override
 
An abstract base class for streams implementations that also support a pwrite operation.
 
This is an optimization pass for GlobalISel generic memory operations.
 
std::unique_ptr< MCObjectWriter > createWinCOFFDwoObjectWriter(std::unique_ptr< MCWinCOFFObjectTargetWriter > MOTW, raw_pwrite_stream &OS, raw_pwrite_stream &DwoOS)
 
std::unique_ptr< MCObjectWriter > createWinCOFFObjectWriter(std::unique_ptr< MCWinCOFFObjectTargetWriter > MOTW, raw_pwrite_stream &OS)
Construct a new Win COFF writer instance.