|
LLVM
3.7.0
|
ListInit - [AL, AH, CL] - Represent a list of defs. More...
#include <Record.h>
Public Types | |
| typedef std::vector< Init * > ::const_iterator | const_iterator |
Public Member Functions | |
| void | Profile (FoldingSetNodeID &ID) const |
| Init * | getElement (unsigned i) const |
| Record * | getElementAsRecord (unsigned i) const |
| Init * | convertInitListSlice (const std::vector< unsigned > &Elements) const override |
| convertInitListSlice - This method is used to implement the list slice selection operator. More... | |
| Init * | convertInitializerTo (RecTy *Ty) const override |
| convertInitializerTo - This virtual function converts to the appropriate Init based on the passed in type. More... | |
| Init * | resolveReferences (Record &R, const RecordVal *RV) const override |
| resolveReferences - This method is used by classes that refer to other variables which may not be defined at the time they expression is formed. More... | |
| std::string | getAsString () const override |
| getAsString - Convert this value to a string form. More... | |
| ArrayRef< Init * > | getValues () const |
| const_iterator | begin () const |
| const_iterator | end () const |
| size_t | size () const |
| bool | empty () const |
| Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const override |
| resolveListElementReference - This method is used to implement VarListElementInit::resolveReferences. More... | |
| Init * | getBit (unsigned Bit) const override |
| getBit - This method is used to return the initializer for the specified bit. More... | |
Public Member Functions inherited from llvm::TypedInit | |
| RecTy * | getType () const |
| Init * | convertInitializerBitRange (const std::vector< unsigned > &Bits) const override |
| convertInitializerBitRange - This method is used to implement the bitrange selection operator. More... | |
| RecTy * | getFieldType (const std::string &FieldName) const override |
| getFieldType - This method is used to implement the FieldInit class. More... | |
Public Member Functions inherited from llvm::Init | |
| InitKind | getKind () const |
| virtual | ~Init () |
| virtual bool | isComplete () const |
| isComplete - This virtual method should be overridden by values that may not be completely specified yet. More... | |
| void | print (raw_ostream &OS) const |
| print - Print out this value. More... | |
| virtual std::string | getAsUnquotedString () const |
| getAsUnquotedString - Convert this value to a string form, without adding quote markers. More... | |
| void | dump () const |
| dump - Debugging method that may be called through a debugger, just invokes print on stderr. More... | |
| virtual Init * | getFieldInit (Record &R, const RecordVal *RV, const std::string &FieldName) const |
| getFieldInit - This method complements getFieldType to return the initializer for the specified field. More... | |
| virtual Init * | getBitVar () const |
| getBitVar - This method is used to retrieve the initializer for bit reference. More... | |
| virtual unsigned | getBitNum () const |
| getBitNum - This method is used to retrieve the bit number of a bit reference. More... | |
Public Member Functions inherited from llvm::FoldingSetImpl::Node | |
| Node () | |
| void * | getNextInBucket () const |
| void | SetNextInBucket (void *N) |
Static Public Member Functions | |
| static bool | classof (const Init *I) |
| static ListInit * | get (ArrayRef< Init * > Range, RecTy *EltTy) |
Static Public Member Functions inherited from llvm::TypedInit | |
| static bool | classof (const Init *I) |
Additional Inherited Members | |
Protected Types inherited from llvm::Init | |
| enum | InitKind { IK_BitInit, IK_FirstTypedInit, IK_BitsInit, 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... | |
Protected Member Functions inherited from llvm::TypedInit | |
| TypedInit (InitKind K, RecTy *T) | |
| ~TypedInit () | |
Protected Member Functions inherited from llvm::Init | |
| Init (InitKind K) | |
| typedef std::vector<Init*>::const_iterator llvm::ListInit::const_iterator |
|
inline |
Definition at line 629 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
Definition at line 599 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_ListInit.
convertInitializerTo - This virtual function converts to the appropriate Init based on the passed in type.
Reimplemented from llvm::TypedInit.
Definition at line 501 of file Record.cpp.
References get(), llvm::TypedInit::getType(), getValues(), and I.
|
overridevirtual |
convertInitListSlice - This method is used to implement the list slice selection operator.
Given an initializer, it selects the specified list elements, returning them as a new init of list type. If it is not legal to take a slice of this, return null.
Reimplemented from llvm::TypedInit.
Definition at line 521 of file Record.cpp.
References get(), getElement(), llvm::TypedInit::getType(), and size().
|
inline |
Definition at line 630 of file Record.h.
Referenced by llvm::BinOpInit::Fold(), and ForeachHelper().
Definition at line 478 of file Record.cpp.
References llvm::FoldingSet< T >::FindNodeOrInsertPos(), I, llvm::FoldingSetImpl::InsertNode(), llvm::IP, and ProfileListInit().
Referenced by convertInitializerTo(), llvm::TypedInit::convertInitListSlice(), convertInitListSlice(), llvm::UnOpInit::Fold(), llvm::BinOpInit::Fold(), ForeachHelper(), and resolveReferences().
|
overridevirtual |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 573 of file Record.cpp.
getBit - This method is used to return the initializer for the specified bit.
Implements llvm::Init.
Definition at line 641 of file Record.h.
References llvm_unreachable.
Definition at line 606 of file Record.h.
Referenced by convertInitListSlice(), resolveListElementReference(), and llvm::VarInit::resolveListElementReference().
Definition at line 531 of file Record.cpp.
References llvm::DI, llvm::dyn_cast(), and llvm::PrintFatalError().
Definition at line 627 of file Record.h.
Referenced by convertInitializerTo(), llvm::Record::getValueAsListOfDefs(), llvm::Record::getValueAsListOfInts(), llvm::Record::getValueAsListOfStrings(), and resolveReferences().
| void ListInit::Profile | ( | FoldingSetNodeID & | ID | ) | const |
Definition at line 495 of file Record.cpp.
References llvm::TypedInit::getType(), and ProfileListInit().
|
overridevirtual |
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 560 of file Record.cpp.
References getElement(), and size().
resolveReferences - This method is used by classes that refer to other variables which may not be defined at the time they 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 539 of file Record.cpp.
References get(), llvm::TypedInit::getType(), getValues(), llvm::Init::resolveReferences(), and size().
|
inline |
Definition at line 632 of file Record.h.
Referenced by convertInitListSlice(), resolveListElementReference(), llvm::VarInit::resolveListElementReference(), and resolveReferences().
1.8.6