LLVM API Documentation
#include <Record.h>
Public Types | |
typedef std::vector< Init * > ::const_iterator | const_arg_iterator |
typedef std::vector < std::string > ::const_iterator | const_name_iterator |
Public Member Functions | |
void | Profile (FoldingSetNodeID &ID) const |
virtual Init * | convertInitializerTo (RecTy *Ty) const |
Init * | getOperator () const |
const std::string & | getName () const |
unsigned | getNumArgs () const |
Init * | getArg (unsigned Num) const |
const std::string & | getArgName (unsigned Num) const |
virtual Init * | resolveReferences (Record &R, const RecordVal *RV) const |
virtual std::string | getAsString () const |
getAsString - Convert this value to a string form. More... | |
const_arg_iterator | arg_begin () const |
const_arg_iterator | arg_end () const |
size_t | arg_size () const |
bool | arg_empty () const |
const_name_iterator | name_begin () const |
const_name_iterator | name_end () const |
size_t | name_size () const |
bool | name_empty () const |
virtual Init * | getBit (unsigned Bit) const |
virtual Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) 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 () |
virtual bool | isComplete () const |
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 |
![]() | |
Node () | |
void * | getNextInBucket () const |
void | SetNextInBucket (void *N) |
Static Public Member Functions | |
static bool | classof (const Init *I) |
static DagInit * | get (Init *V, const std::string &VN, ArrayRef< Init * > ArgRange, ArrayRef< std::string > NameRange) |
static DagInit * | get (Init *V, const std::string &VN, const std::vector< std::pair< Init *, std::string > > &args) |
![]() | |
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... | |
![]() | |
TypedInit (InitKind K, RecTy *T) | |
![]() | |
Init (InitKind K) | |
DagInit - (v a, b) - Represent a DAG tree value. DAG inits are required to have at least one value then a (possibly empty) list of arguments. Each argument can have a name associated with it.
typedef std::vector<Init*>::const_iterator llvm::DagInit::const_arg_iterator |
typedef std::vector<std::string>::const_iterator llvm::DagInit::const_name_iterator |
|
inline |
|
inline |
Definition at line 1276 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_DagInit.
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 1288 of file Record.h.
References llvm::RecTy::convertValue().
|
static |
Definition at line 1554 of file Record.cpp.
References I, and ProfileDagInit().
Referenced by llvm::BinOpInit::Fold(), ForeachHelper(), get(), and resolveReferences().
|
static |
Definition at line 1574 of file Record.cpp.
References get().
Definition at line 1297 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
|
inline |
Definition at line 1301 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
|
virtual |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 1610 of file Record.cpp.
References llvm::Init::getAsString().
getBit - This method is used to return the initializer for the specified bit.
Implements llvm::Init.
Definition at line 1325 of file Record.h.
References llvm_unreachable.
|
inline |
|
inline |
Definition at line 1296 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
|
inline |
Definition at line 1292 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
|
inline |
|
inline |
void DagInit::Profile | ( | FoldingSetNodeID & | ID | ) | const |
Definition at line 1592 of file Record.cpp.
References ProfileDagInit().
|
inlinevirtual |
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 1329 of file Record.h.
References llvm_unreachable.
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 1596 of file Record.cpp.
References get(), and llvm::Init::resolveReferences().