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 |
Init * | convertInitializerTo (RecTy *Ty) const override |
Init * | getOperator () const |
const std::string & | getName () const |
unsigned | getNumArgs () const |
Init * | getArg (unsigned Num) const |
const std::string & | getArgName (unsigned Num) const |
Init * | resolveReferences (Record &R, const RecordVal *RV) const override |
std::string | getAsString () const override |
getAsString - Convert this value to a string form. | |
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 |
Init * | getBit (unsigned Bit) const override |
Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const override |
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) |
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 |
const_arg_iterator llvm::DagInit::arg_begin | ( | ) | const [inline] |
bool llvm::DagInit::arg_empty | ( | ) | const [inline] |
const_arg_iterator llvm::DagInit::arg_end | ( | ) | const [inline] |
size_t llvm::DagInit::arg_size | ( | ) | const [inline] |
static bool llvm::DagInit::classof | ( | const Init * | I | ) | [inline, static] |
Reimplemented from llvm::TypedInit.
Definition at line 1283 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_DagInit.
Init* llvm::DagInit::convertInitializerTo | ( | RecTy * | Ty | ) | const [inline, override, virtual] |
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 1295 of file Record.h.
References llvm::RecTy::convertValue().
DagInit * DagInit::get | ( | Init * | V, |
const std::string & | VN, | ||
ArrayRef< Init * > | ArgRange, | ||
ArrayRef< std::string > | NameRange | ||
) | [static] |
Definition at line 1572 of file Record.cpp.
References I, and ProfileDagInit().
Referenced by ForeachHelper(), get(), and resolveReferences().
DagInit * DagInit::get | ( | Init * | V, |
const std::string & | VN, | ||
const std::vector< std::pair< Init *, std::string > > & | args | ||
) | [static] |
Definition at line 1592 of file Record.cpp.
References get().
Init* llvm::DagInit::getArg | ( | unsigned | Num | ) | const [inline] |
Definition at line 1304 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
const std::string& llvm::DagInit::getArgName | ( | unsigned | Num | ) | const [inline] |
Definition at line 1308 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
std::string DagInit::getAsString | ( | ) | const [override, virtual] |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 1628 of file Record.cpp.
References llvm::Init::getAsString().
Init* llvm::DagInit::getBit | ( | unsigned | Bit | ) | const [inline, override, virtual] |
getBit - This method is used to return the initializer for the specified bit.
Implements llvm::Init.
Definition at line 1332 of file Record.h.
References llvm_unreachable.
const std::string& llvm::DagInit::getName | ( | ) | const [inline] |
unsigned llvm::DagInit::getNumArgs | ( | ) | const [inline] |
Definition at line 1303 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
Init* llvm::DagInit::getOperator | ( | ) | const [inline] |
Definition at line 1299 of file Record.h.
Referenced by llvm::SetTheory::evaluate(), llvm::BinOpInit::Fold(), and ForeachHelper().
const_name_iterator llvm::DagInit::name_begin | ( | ) | const [inline] |
bool llvm::DagInit::name_empty | ( | ) | const [inline] |
const_name_iterator llvm::DagInit::name_end | ( | ) | const [inline] |
size_t llvm::DagInit::name_size | ( | ) | const [inline] |
void DagInit::Profile | ( | FoldingSetNodeID & | ID | ) | const |
Definition at line 1610 of file Record.cpp.
References ProfileDagInit().
Init* llvm::DagInit::resolveListElementReference | ( | Record & | R, |
const RecordVal * | RV, | ||
unsigned | Elt | ||
) | const [inline, override, 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 1336 of file Record.h.
References llvm_unreachable.
Init * DagInit::resolveReferences | ( | Record & | R, |
const RecordVal * | RV | ||
) | const [override, virtual] |
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 1614 of file Record.cpp.
References get(), and llvm::Init::resolveReferences().