class BitsInit
Declaration
class BitsInit : public TypedInit, public Node, public TrailingObjects { /* full declaration omitted */ };
Description
'{ a, b, c }' - Represents an initializer for a BitsRecTy value. It contains a vector of bits, whose size is determined by the type.
Declared at: llvm/include/llvm/TableGen/Record.h:513
Inherits from: TypedInit, FoldingSetBase::Node, TrailingObjects
Member Variables
Inherited from Init:
Method Overview
- public BitsInit(const llvm::BitsInit &)
- public void Profile(llvm::FoldingSetNodeID & ID) const
- public bool allInComplete() const
- public static bool classof(const llvm::Init * I)
- public llvm::Init * convertInitializerBitRange(ArrayRef<unsigned int> Bits) const
- public llvm::Init * convertInitializerTo(llvm::RecTy * Ty) const
- public static llvm::BitsInit * get(ArrayRef<llvm::Init *> Range)
- public std::string getAsString() const
- public llvm::Init * getBit(unsigned int Bit) const
- public unsigned int getNumBits() const
- public bool isComplete() const
- public bool isConcrete() const
- public llvm::Init * resolveReferences(llvm::Resolver & R) const
Inherited from FoldingSetBase::Node:
Inherited from TypedInit:
- public classof
- public convertInitListSlice
- public convertInitializerBitRange
- public convertInitializerTo
- public getCastTo
- public getFieldType
- public getType
Inherited from Init:
- public convertInitListSlice
- public convertInitializerBitRange
- public convertInitializerTo
- public dump
- public getAsString
- public getAsUnquotedString
- public getBit
- public getCastTo
- public getFieldType
- public getKind
- public isComplete
- public isConcrete
- public print
- public resolveReferences
Methods
¶BitsInit(const llvm::BitsInit&)
BitsInit(const llvm::BitsInit&)
Declared at: llvm/include/llvm/TableGen/Record.h:521
Parameters
- const llvm::BitsInit&
¶void Profile(llvm::FoldingSetNodeID& ID) const
void Profile(llvm::FoldingSetNodeID& ID) const
Declared at: llvm/include/llvm/TableGen/Record.h:533
Parameters
¶bool allInComplete() const
bool allInComplete() const
Declared at: llvm/include/llvm/TableGen/Record.h:546
¶static bool classof(const llvm::Init* I)
static bool classof(const llvm::Init* I)
Declared at: llvm/include/llvm/TableGen/Record.h:527
Parameters
- const llvm::Init* I
¶llvm::Init* convertInitializerBitRange(
ArrayRef<unsigned int> Bits) const
llvm::Init* convertInitializerBitRange(
ArrayRef<unsigned int> Bits) const
Description
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.
Declared at: llvm/include/llvm/TableGen/Record.h:538
Parameters
- ArrayRef<unsigned int> Bits
¶llvm::Init* convertInitializerTo(
llvm::RecTy* Ty) const
llvm::Init* convertInitializerTo(
llvm::RecTy* Ty) const
Description
Convert to an initializer whose type is-a Ty, or return nullptr if this is not possible (this can happen if the initializer's type is convertible to Ty, but there are unresolved references).
Declared at: llvm/include/llvm/TableGen/Record.h:537
Parameters
- llvm::RecTy* Ty
¶static llvm::BitsInit* get(
ArrayRef<llvm::Init*> Range)
static llvm::BitsInit* get(
ArrayRef<llvm::Init*> Range)
Declared at: llvm/include/llvm/TableGen/Record.h:531
Parameters
- ArrayRef<llvm::Init*> Range
¶std::string getAsString() const
std::string getAsString() const
Description
Convert this value to a string form.
Declared at: llvm/include/llvm/TableGen/Record.h:553
¶llvm::Init* getBit(unsigned int Bit) const
llvm::Init* getBit(unsigned int Bit) const
Description
This method is used to return the initializer for the specified bit.
Declared at: llvm/include/llvm/TableGen/Record.h:557
Parameters
- unsigned int Bit
¶unsigned int getNumBits() const
unsigned int getNumBits() const
Declared at: llvm/include/llvm/TableGen/Record.h:535
¶bool isComplete() const
bool isComplete() const
Description
This virtual method should be overridden by values that may not be completely specified yet.
Declared at: llvm/include/llvm/TableGen/Record.h:540
¶bool isConcrete() const
bool isConcrete() const
Description
Is this a concrete and fully resolved value without any references or stuck operations? Unset values are concrete.
Declared at: llvm/include/llvm/TableGen/Record.h:552
¶llvm::Init* resolveReferences(
llvm::Resolver& R) const
llvm::Init* resolveReferences(
llvm::Resolver& R) const
Description
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.
Declared at: llvm/include/llvm/TableGen/Record.h:555