LLVM API Documentation

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

#include <Record.h>

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

Public Member Functions

virtual OpInitclone (std::vector< Init * > &Operands) const =0
 
virtual int getNumOperands () const =0
 
virtual InitgetOperand (int i) const =0
 
virtual InitFold (Record *CurRec, MultiClass *CurMultiClass) const =0
 
virtual InitconvertInitializerTo (RecTy *Ty) const
 
virtual InitresolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const
 
virtual InitgetBit (unsigned Bit) const
 
- Public Member Functions inherited from llvm::TypedInit
RecTygetType () const
 
virtual InitconvertInitializerBitRange (const std::vector< unsigned > &Bits) const
 
virtual InitconvertInitListSlice (const std::vector< unsigned > &Elements) const
 
virtual RecTygetFieldType (const std::string &FieldName) const
 
- Public Member Functions inherited from llvm::Init
InitKind getKind () const
 
virtual ~Init ()
 
virtual bool isComplete () const
 
void print (raw_ostream &OS) const
 print - Print out this value. More...
 
virtual std::string getAsString () const =0
 getAsString - Convert this value to a string form. More...
 
virtual std::string getAsUnquotedString () const
 
void dump () const
 
virtual InitgetFieldInit (Record &R, const RecordVal *RV, const std::string &FieldName) const
 
virtual InitresolveReferences (Record &R, const RecordVal *RV) const
 
virtual InitgetBitVar () const
 
virtual unsigned getBitNum () const
 

Static Public Member Functions

static bool classof (const Init *I)
 
- Static Public Member Functions inherited from llvm::TypedInit
static bool classof (const Init *I)
 

Protected Member Functions

 OpInit (InitKind K, RecTy *Type)
 
- Protected Member Functions inherited from llvm::TypedInit
 TypedInit (InitKind K, RecTy *T)
 
- Protected Member Functions inherited from llvm::Init
 Init (InitKind K)
 

Additional Inherited Members

- Protected Types inherited from llvm::Init
enum  InitKind {
  IK_BitInit, IK_BitsInit, IK_FirstTypedInit, IK_DagInit,
  IK_DefInit, IK_FieldInit, IK_IntInit, IK_ListInit,
  IK_FirstOpInit, IK_BinOpInit, IK_TernOpInit, IK_UnOpInit,
  IK_LastOpInit, IK_StringInit, IK_VarInit, IK_VarListElementInit,
  IK_LastTypedInit, IK_UnsetInit, IK_VarBitInit
}
 Discriminator enum (for isa<>, dyn_cast<>, et al.) More...
 

Detailed Description

OpInit - Base class for operators

Definition at line 847 of file Record.h.

Constructor & Destructor Documentation

llvm::OpInit::OpInit ( InitKind  K,
RecTy Type 
)
inlineexplicitprotected

Definition at line 852 of file Record.h.

Member Function Documentation

static bool llvm::OpInit::classof ( const Init I)
inlinestatic
virtual OpInit* llvm::OpInit::clone ( std::vector< Init * > &  Operands) const
pure virtual
virtual Init* llvm::OpInit::convertInitializerTo ( RecTy Ty) const
inlinevirtual

convertInitializerTo - This virtual function is a simple call-back function that should be overridden to call the appropriate RecTy::convertValue method.

Implements llvm::Init.

Definition at line 869 of file Record.h.

References llvm::RecTy::convertValue().

virtual Init* llvm::OpInit::Fold ( Record CurRec,
MultiClass CurMultiClass 
) const
pure virtual
Init * OpInit::getBit ( unsigned  Bit) const
virtual

getBit - This method is used to return the initializer for the specified bit.

Implements llvm::Init.

Definition at line 734 of file Record.cpp.

References llvm::BitRecTy::get(), llvm::VarBitInit::get(), and llvm::TypedInit::getType().

virtual int llvm::OpInit::getNumOperands ( ) const
pure virtual
virtual Init* llvm::OpInit::getOperand ( int  i) const
pure virtual
Init * OpInit::resolveListElementReference ( Record R,
const RecordVal RV,
unsigned  Elt 
) const
virtual

resolveListElementReference - This method is used to implement VarListElementInit::resolveReferences. If the list element is resolvable now, we return the resolved value, otherwise we return null.

Implements llvm::TypedInit.

Definition at line 712 of file Record.cpp.

References llvm::dyn_cast(), Fold(), llvm::VarListElementInit::get(), llvm::TypedInit::resolveListElementReference(), and llvm::Init::resolveReferences().


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