14 #define DEBUG_TYPE "asm-printer"
45 unsigned PadTo)
const {
78 return "indirect pcrel udata4";
80 return "indirect pcrel sdata4";
82 return "indirect pcrel udata8";
84 return "indirect pcrel sdata8";
87 return "<unknown encoding>";
113 switch (Encoding & 0x07) {
123 unsigned Encoding)
const {
142 const MCSymbol *SectionLabel)
const {
155 "Section offset using wrong section base for label");
virtual void AddComment(const Twine &T)
void EmitSLEB128IntValue(int64_t Value)
unsigned getPointerSize(unsigned AS=0) const
void EmitLabelDifference(const MCSymbol *Hi, const MCSymbol *Lo, unsigned Size) const
virtual void EmitCFIRegister(int64_t Register1, int64_t Register2)
virtual void EmitCFIDefCfaOffset(int64_t Offset)
void emitCFIInstruction(const MCCFIInstruction &Inst) const
Emit frame instruction to describe the layout of the frame.
unsigned getRegister() const
const MCSection & getSection() const
#define llvm_unreachable(msg)
const char * CallFrameString(unsigned Encoding)
virtual void EmitIntValue(uint64_t Value, unsigned Size)
void EmitValue(const MCExpr *Value, unsigned Size)
MachineModuleInfo * MMI
MMI - This is a pointer to the current MachineModuleInfo.
bool needsDwarfSectionOffsetDirective() const
unsigned GetSizeOfEncodedValue(unsigned Encoding) const
GetSizeOfEncodedValue - Return the size of the encoding in bytes.
virtual void EmitCFIDefCfaRegister(int64_t Register)
virtual void EmitCOFFSecRel32(MCSymbol const *Symbol)
void EmitSLEB128(int64_t Value, const char *Desc=0) const
EmitSLEB128 - emit the specified signed leb128 value.
OpType getOperation() const
virtual bool isBaseAddressKnownZero() const
virtual void EmitCFIOffset(int64_t Register, int64_t Offset)
void EmitSectionOffset(const MCSymbol *Label, const MCSymbol *SectionLabel) const
unsigned getRegister2() const
void EmitTTypeReference(const GlobalValue *GV, unsigned Encoding) const
EmitReference - Emit reference to a ttype global with a specified encoding.
static const char * DecodeDWARFEncoding(unsigned Encoding)
void EmitULEB128(uint64_t Value, const char *Desc=0, unsigned PadTo=0) const
EmitULEB128 - emit the specified unsigned leb128 value.
virtual const MCExpr * getTTypeGlobalReference(const GlobalValue *GV, Mangler *Mang, MachineModuleInfo *MMI, unsigned Encoding, MCStreamer &Streamer) const
void EmitEncodingByte(unsigned Val, const char *Desc=0) const
virtual const DataLayout * getDataLayout() const
virtual void EmitCFIDefCfa(int64_t Register, int64_t Offset)
void EmitCFAByte(unsigned Val) const
EmitCFAByte - Emit a .byte 42 directive for a DW_CFA_xxx value.
void EmitULEB128IntValue(uint64_t Value, unsigned Padding=0)
const TargetLoweringObjectFile & getObjFileLowering() const
getObjFileLowering - Return information about object file lowering.
LLVM Value Representation.
void EmitSymbolValue(const MCSymbol *Sym, unsigned Size)
virtual void EmitCFIWindowSave()