LLVM API Documentation
#include <Record.h>
Public Types | |
enum | TernaryOp { SUBST, FOREACH, IF } |
Public Member Functions | |
virtual OpInit * | clone (std::vector< Init * > &Operands) const |
virtual int | getNumOperands () const |
virtual Init * | getOperand (int i) const |
TernaryOp | getOpcode () const |
Init * | getLHS () const |
Init * | getMHS () const |
Init * | getRHS () const |
virtual Init * | Fold (Record *CurRec, MultiClass *CurMultiClass) const |
virtual bool | isComplete () const |
virtual Init * | resolveReferences (Record &R, const RecordVal *RV) const |
virtual std::string | getAsString () const |
getAsString - Convert this value to a string form. More... | |
![]() | |
virtual Init * | convertInitializerTo (RecTy *Ty) const |
virtual Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const |
virtual Init * | getBit (unsigned Bit) const |
![]() | |
RecTy * | getType () const |
virtual Init * | convertInitializerBitRange (const std::vector< unsigned > &Bits) const |
virtual Init * | convertInitListSlice (const std::vector< unsigned > &Elements) const |
virtual RecTy * | getFieldType (const std::string &FieldName) const |
![]() | |
InitKind | getKind () const |
virtual | ~Init () |
void | print (raw_ostream &OS) const |
print - Print out this value. More... | |
virtual std::string | getAsUnquotedString () const |
void | dump () const |
virtual Init * | getFieldInit (Record &R, const RecordVal *RV, const std::string &FieldName) const |
virtual Init * | getBitVar () const |
virtual unsigned | getBitNum () const |
Static Public Member Functions | |
static bool | classof (const Init *I) |
static TernOpInit * | get (TernaryOp opc, Init *lhs, Init *mhs, Init *rhs, RecTy *Type) |
![]() | |
static bool | classof (const Init *I) |
![]() | |
static bool | classof (const Init *I) |
Additional Inherited Members | |
![]() | |
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... | |
![]() | |
OpInit (InitKind K, RecTy *Type) | |
![]() | |
TypedInit (InitKind K, RecTy *T) | |
![]() | |
Init (InitKind K) | |
TernOpInit - !op (X, Y, Z) - Combine two inits.
Definition at line 995 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_TernOpInit.
Implements llvm::OpInit.
Definition at line 1003 of file Record.h.
References get(), getOpcode(), and llvm::TypedInit::getType().
|
virtual |
Implements llvm::OpInit.
Definition at line 1144 of file Record.cpp.
References llvm::Init::convertInitializerTo(), llvm::dyn_cast(), FOREACH, ForeachHelper(), llvm::IntRecTy::get(), llvm::StringInit::get(), llvm::VarInit::get(), llvm::DefInit::get(), llvm::DefInit::getAsString(), getOpcode(), llvm::TypedInit::getType(), llvm::IntInit::getValue(), I, IF, and SUBST.
Referenced by resolveReferences().
|
static |
Definition at line 995 of file Record.cpp.
References I.
Referenced by clone(), and resolveReferences().
|
virtual |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 1253 of file Record.cpp.
References FOREACH, llvm::Init::getAsString(), IF, and SUBST.
|
inline |
Definition at line 1024 of file Record.h.
Referenced by getOperand().
|
inline |
Definition at line 1025 of file Record.h.
Referenced by getOperand().
|
inlinevirtual |
Implements llvm::OpInit.
|
inline |
Definition at line 1023 of file Record.h.
Referenced by clone(), Fold(), and resolveReferences().
|
inlinevirtual |
|
inline |
Definition at line 1026 of file Record.h.
Referenced by getOperand().
|
inlinevirtual |
isComplete - This virtual method should be overridden by values that may not be completely specified yet.
Reimplemented from llvm::Init.
resolveReferences - This method is used by classes that refer to other variables which may not be defined at the time the expression is formed. If a value is set for the variable later, this method will be called on users of the value to allow the value to propagate out.
Reimplemented from llvm::Init.
Definition at line 1222 of file Record.cpp.
References llvm::Init::convertInitializerTo(), llvm::dyn_cast(), Fold(), llvm::IntRecTy::get(), get(), getOpcode(), llvm::TypedInit::getType(), llvm::IntInit::getValue(), I, IF, and llvm::Init::resolveReferences().