LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Friends | List of all members
llvm::NVPTXAsmPrinter Class Reference

#include <NVPTXAsmPrinter.h>

Inheritance diagram for llvm::NVPTXAsmPrinter:
Inheritance graph
[legend]
Collaboration diagram for llvm::NVPTXAsmPrinter:
Collaboration graph
[legend]

Public Member Functions

 NVPTXAsmPrinter (TargetMachine &TM, MCStreamer &Streamer)
 
 ~NVPTXAsmPrinter ()
 
bool ignoreLoc (const MachineInstr &)
 
std::string getVirtualRegisterName (unsigned) const
 
void emitLineNumberAsDotLoc (const MachineInstr &)
 
- Public Member Functions inherited from llvm::AsmPrinter
virtual ~AsmPrinter ()
 
const DwarfDebuggetDwarfDebug () const
 
bool isVerbose () const
 
unsigned getFunctionNumber () const
 
const TargetLoweringObjectFilegetObjFileLowering () const
 getObjFileLowering - Return information about object file lowering. More...
 
const DataLayoutgetDataLayout () const
 getDataLayout - Return information about data layout. More...
 
StringRef getTargetTriple () const
 getTargetTriple - Return the target triple string. More...
 
const MCSectiongetCurrentSection () const
 getCurrentSection() - Return the current section we are emitting to. More...
 
MCSymbolgetSymbol (const GlobalValue *GV) const
 
void getAnalysisUsage (AnalysisUsage &AU) const
 
virtual bool runOnMachineFunction (MachineFunction &MF)
 
void SetupMachineFunction (MachineFunction &MF)
 
void EmitFunctionHeader ()
 
void EmitFunctionBody ()
 
void emitPrologLabel (const MachineInstr &MI)
 
CFIMoveType needsCFIMoves ()
 
bool needsSEHMoves ()
 
bool needsRelocationsForDwarfStringPool () const
 
virtual void EmitConstantPool ()
 
void EmitJumpTableInfo ()
 
virtual void EmitGlobalVariable (const GlobalVariable *GV)
 EmitGlobalVariable - Emit the specified global variable to the .s file. More...
 
bool EmitSpecialLLVMGlobal (const GlobalVariable *GV)
 
void EmitAlignment (unsigned NumBits, const GlobalValue *GV=0) const
 
void EmitBasicBlockStart (const MachineBasicBlock *MBB) const
 
void EmitGlobalConstant (const Constant *CV)
 Print a general LLVM constant to the .s file. More...
 
virtual void EmitStartOfAsmFile (Module &)
 
virtual void EmitEndOfAsmFile (Module &)
 
virtual void EmitMachineConstantPoolValue (MachineConstantPoolValue *MCPV)
 
virtual void EmitXXStructor (const Constant *CV)
 
virtual bool isBlockOnlyReachableByFallthrough (const MachineBasicBlock *MBB) const
 
MCSymbolGetTempSymbol (StringRef Name, unsigned ID) const
 
MCSymbolGetTempSymbol (StringRef Name) const
 
MCSymbolGetSymbolWithGlobalValueBase (const GlobalValue *GV, StringRef Suffix, bool ForcePrivate=true) const
 
MCSymbolGetExternalSymbolSymbol (StringRef Sym) const
 
MCSymbolGetCPISymbol (unsigned CPID) const
 GetCPISymbol - Return the symbol for the specified constant pool entry. More...
 
MCSymbolGetJTISymbol (unsigned JTID, bool isLinkerPrivate=false) const
 GetJTISymbol - Return the symbol for the specified jump table entry. More...
 
MCSymbolGetJTSetSymbol (unsigned UID, unsigned MBBID) const
 
MCSymbolGetBlockAddressSymbol (const BlockAddress *BA) const
 
MCSymbolGetBlockAddressSymbol (const BasicBlock *BB) const
 
void printOffset (int64_t Offset, raw_ostream &OS) const
 printOffset - This is just convenient handler for printing offsets. More...
 
void EmitInt8 (int Value) const
 
void EmitInt16 (int Value) const
 
void EmitInt32 (int Value) const
 
void EmitLabelDifference (const MCSymbol *Hi, const MCSymbol *Lo, unsigned Size) const
 
void EmitLabelOffsetDifference (const MCSymbol *Hi, uint64_t Offset, const MCSymbol *Lo, unsigned Size) const
 
void EmitLabelPlusOffset (const MCSymbol *Label, uint64_t Offset, unsigned Size, bool IsSectionRelative=false) const
 
void EmitLabelReference (const MCSymbol *Label, unsigned Size, bool IsSectionRelative=false) const
 
void EmitSLEB128 (int64_t Value, const char *Desc=0) const
 EmitSLEB128 - emit the specified signed leb128 value. More...
 
void EmitULEB128 (uint64_t Value, const char *Desc=0, unsigned PadTo=0) const
 EmitULEB128 - emit the specified unsigned leb128 value. More...
 
void EmitCFAByte (unsigned Val) const
 EmitCFAByte - Emit a .byte 42 directive for a DW_CFA_xxx value. More...
 
void EmitEncodingByte (unsigned Val, const char *Desc=0) const
 
unsigned GetSizeOfEncodedValue (unsigned Encoding) const
 GetSizeOfEncodedValue - Return the size of the encoding in bytes. More...
 
void EmitTTypeReference (const GlobalValue *GV, unsigned Encoding) const
 EmitReference - Emit reference to a ttype global with a specified encoding. More...
 
void EmitSectionOffset (const MCSymbol *Label, const MCSymbol *SectionLabel) const
 
virtual unsigned getISAEncoding ()
 
virtual void EmitDwarfRegOp (const MachineLocation &MLoc, bool Indirect) const
 EmitDwarfRegOp - Emit dwarf register operation. More...
 
void emitCFIInstruction (const MCCFIInstruction &Inst) const
 Emit frame instruction to describe the layout of the frame. More...
 
virtual void PrintSpecial (const MachineInstr *MI, raw_ostream &OS, const char *Code) const
 
- Public Member Functions inherited from llvm::FunctionPass
 FunctionPass (char &pid)
 
PasscreatePrinterPass (raw_ostream &O, const std::string &Banner) const
 createPrinterPass - Get a function printer pass. More...
 
virtual void assignPassManager (PMStack &PMS, PassManagerType T)
 
virtual PassManagerType getPotentialPassManagerType () const
 Return what kind of Pass Manager can manage this pass. More...
 
- Public Member Functions inherited from llvm::Pass
 Pass (PassKind K, char &pid)
 
virtual ~Pass ()
 
PassKind getPassKind () const
 
AnalysisID getPassID () const
 getPassID - Return the PassID number that corresponds to this pass. More...
 
virtual void print (raw_ostream &O, const Module *M) const
 
void dump () const
 
virtual void preparePassManager (PMStack &)
 Check if available pass managers are suitable for this pass or not. More...
 
void setResolver (AnalysisResolver *AR)
 
AnalysisResolvergetResolver () const
 
virtual void releaseMemory ()
 
virtual void * getAdjustedAnalysisPointer (AnalysisID ID)
 
virtual ImmutablePassgetAsImmutablePass ()
 
virtual PMDataManagergetAsPMDataManager ()
 
virtual void verifyAnalysis () const
 
virtual void dumpPassStructure (unsigned Offset=0)
 
template<typename AnalysisType >
AnalysisType * getAnalysisIfAvailable () const
 
bool mustPreserveAnalysisID (char &AID) const
 
template<typename AnalysisType >
AnalysisType & getAnalysis () const
 
template<typename AnalysisType >
AnalysisType & getAnalysis (Function &F)
 
template<typename AnalysisType >
AnalysisType & getAnalysisID (AnalysisID PI) const
 
template<typename AnalysisType >
AnalysisType & getAnalysisID (AnalysisID PI, Function &F)
 

Public Attributes

DebugLoc prevDebugLoc
 
- Public Attributes inherited from llvm::AsmPrinter
TargetMachineTM
 
const MCAsmInfoMAI
 
const MCInstrInfoMII
 
MCContextOutContext
 
MCStreamerOutStreamer
 
const MachineFunctionMF
 The current machine function. More...
 
MachineModuleInfoMMI
 MMI - This is a pointer to the current MachineModuleInfo. More...
 
ManglerMang
 
MCSymbolCurrentFnSym
 
MCSymbolCurrentFnSymForSize
 

Protected Member Functions

bool doInitialization (Module &M)
 
bool doFinalization (Module &M)
 
- Protected Member Functions inherited from llvm::AsmPrinter
 AsmPrinter (TargetMachine &TM, MCStreamer &Streamer)
 
- Protected Member Functions inherited from llvm::MachineFunctionPass
 MachineFunctionPass (char &ID)
 

Friends

class AggBuffer
 

Additional Inherited Members

- Public Types inherited from llvm::AsmPrinter
enum  CFIMoveType { CFI_M_None, CFI_M_EH, CFI_M_Debug }
 
- Static Public Member Functions inherited from llvm::Pass
static const PassInfolookupPassInfo (const void *TI)
 
static const PassInfolookupPassInfo (StringRef Arg)
 
static PasscreatePass (AnalysisID ID)
 

Detailed Description

Definition at line 70 of file NVPTXAsmPrinter.h.

Constructor & Destructor Documentation

llvm::NVPTXAsmPrinter::NVPTXAsmPrinter ( TargetMachine TM,
MCStreamer Streamer 
)
inline

Definition at line 284 of file NVPTXAsmPrinter.h.

llvm::NVPTXAsmPrinter::~NVPTXAsmPrinter ( )
inline

Definition at line 291 of file NVPTXAsmPrinter.h.

Member Function Documentation

bool NVPTXAsmPrinter::doFinalization ( Module M)
protectedvirtual
bool NVPTXAsmPrinter::doInitialization ( Module M)
protectedvirtual

doInitialization - Set up the AsmPrinter when we are working on a new module. If your pass overrides this, it must make sure to explicitly call this implementation.

Reimplemented from llvm::AsmPrinter.

Definition at line 883 of file NVPTXAsmPrinter.cpp.

References llvm::NVPTX::CUDA, llvm::Module::getModuleInlineAsm(), llvm::raw_svector_ostream::str(), and llvm::SystemZISD::TM.

void NVPTXAsmPrinter::emitLineNumberAsDotLoc ( const MachineInstr MI)
std::string NVPTXAsmPrinter::getVirtualRegisterName ( unsigned  Reg) const
bool NVPTXAsmPrinter::ignoreLoc ( const MachineInstr MI)

Friends And Related Function Documentation

friend class AggBuffer
friend

Definition at line 178 of file NVPTXAsmPrinter.h.

Member Data Documentation

DebugLoc llvm::NVPTXAsmPrinter::prevDebugLoc

Definition at line 300 of file NVPTXAsmPrinter.h.


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