LLVM API Documentation
#include <Record.h>
Public Member Functions | |
void | Profile (FoldingSetNodeID &ID) const |
unsigned | getNumBits () const |
Init * | convertInitializerTo (RecTy *Ty) const override |
Init * | convertInitializerBitRange (const std::vector< unsigned > &Bits) const override |
bool | isComplete () const override |
bool | allInComplete () const |
std::string | getAsString () const override |
getAsString - Convert this value to a string form. | |
Init * | resolveListElementReference (Record &R, const RecordVal *RV, unsigned Elt) const override |
Init * | resolveReferences (Record &R, const RecordVal *RV) const override |
Init * | getBit (unsigned Bit) const override |
Static Public Member Functions | |
static bool | classof (const Init *I) |
static BitsInit * | get (ArrayRef< Init * > Range) |
BitsInit - { a, b, c } - Represents an initializer for a BitsRecTy value. It contains a vector of bits, whose size is determined by the type.
bool llvm::BitsInit::allInComplete | ( | ) | const [inline] |
Definition at line 685 of file Record.h.
References getBit(), getNumBits(), and llvm::Init::isComplete().
static bool llvm::BitsInit::classof | ( | const Init * | I | ) | [inline, static] |
Reimplemented from llvm::TypedInit.
Definition at line 665 of file Record.h.
References llvm::Init::getKind(), and llvm::Init::IK_BitsInit.
Init * BitsInit::convertInitializerBitRange | ( | const std::vector< unsigned > & | Bits | ) | const [override, virtual] |
convertInitializerBitRange - This method is used to implement the bitrange selection operator. Given an initializer, it selects the specified bits out, returning them as a new init of bits type. If it is not legal to use the bit subscript operator on this initializer, return null.
Reimplemented from llvm::TypedInit.
Definition at line 493 of file Record.cpp.
References get(), getBit(), and getNumBits().
Init* llvm::BitsInit::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 674 of file Record.h.
References llvm::RecTy::convertValue().
BitsInit * BitsInit::get | ( | ArrayRef< Init * > | Range | ) | [static] |
Definition at line 471 of file Record.cpp.
References I, and ProfileBitsInit().
Referenced by llvm::TypedInit::convertInitializerBitRange(), convertInitializerBitRange(), and resolveReferences().
std::string BitsInit::getAsString | ( | ) | const [override, virtual] |
getAsString - Convert this value to a string form.
Implements llvm::Init.
Definition at line 504 of file Record.cpp.
References llvm::tgtok::Bit, getBit(), and getNumBits().
Init* llvm::BitsInit::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 702 of file Record.h.
References llvm::tgtok::Bit.
Referenced by allInComplete(), convertInitializerBitRange(), llvm::BitRecTy::convertValue(), llvm::IntRecTy::convertValue(), getAsString(), and isComplete().
unsigned llvm::BitsInit::getNumBits | ( | ) | const [inline] |
Definition at line 672 of file Record.h.
Referenced by allInComplete(), convertInitializerBitRange(), llvm::BitRecTy::convertValue(), llvm::BitsRecTy::convertValue(), llvm::IntRecTy::convertValue(), getAsString(), isComplete(), and resolveReferences().
bool llvm::BitsInit::isComplete | ( | ) | const [inline, override, virtual] |
isComplete - This virtual method should be overridden by values that may not be completely specified yet.
Reimplemented from llvm::Init.
Definition at line 680 of file Record.h.
References getBit(), getNumBits(), and llvm::Init::isComplete().
void BitsInit::Profile | ( | FoldingSetNodeID & | ID | ) | const |
Definition at line 488 of file Record.cpp.
References ProfileBitsInit().
Init* llvm::BitsInit::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 695 of file Record.h.
References llvm_unreachable.
Init * BitsInit::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 528 of file Record.cpp.
References llvm::tgtok::Bit, fixBitInit(), get(), llvm::Init::getBit(), llvm::Init::getBitNum(), llvm::Init::getBitVar(), getNumBits(), and llvm::Init::resolveReferences().