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:527

Inherits from: TypedInit, FoldingSetBase::Node, TrailingObjects

Member Variables

private unsigned int NumBits

Inherited from Init:

protected Opc

Method Overview

Inherited from FoldingSetBase::Node:

Inherited from TypedInit:

Inherited from Init:

Methods

BitsInit(llvm::RecordKeeper& RK, unsigned int N)

Declared at: llvm/include/llvm/TableGen/Record.h:531

Parameters

llvm::RecordKeeper& RK
unsigned int N

BitsInit(const llvm::BitsInit&)

Declared at: llvm/include/llvm/TableGen/Record.h:535

Parameters

const llvm::BitsInit&

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: llvm/include/llvm/TableGen/Record.h:547

Parameters

llvm::FoldingSetNodeID& ID

bool allInComplete() const

Declared at: llvm/include/llvm/TableGen/Record.h:560

static bool classof(const llvm::Init* I)

Declared at: llvm/include/llvm/TableGen/Record.h:541

Parameters

const llvm::Init* I

llvm::Init* convertInitializerBitRange(
    ArrayRef<unsigned int> Bits) const

Description

This function is used to implement the bit range selection operator. Given a value, it selects the specified bits, returning them as a new \p Init of type \p bits. If it is not legal to use the bit selection operator on this value, null is returned.

Declared at: llvm/include/llvm/TableGen/Record.h:552

Parameters

ArrayRef<unsigned int> Bits

llvm::Init* convertInitializerTo(
    llvm::RecTy* Ty) const

Description

Convert to a value whose type is \p Ty, or return null if this is not possible. This can happen if the value's type is convertible to \p Ty, but there are unresolved references.

Declared at: llvm/include/llvm/TableGen/Record.h:551

Parameters

llvm::RecTy* Ty

static llvm::BitsInit* get(
    llvm::RecordKeeper& RK,
    ArrayRef<llvm::Init*> Range)

Declared at: llvm/include/llvm/TableGen/Record.h:545

Parameters

llvm::RecordKeeper& RK
ArrayRef<llvm::Init*> Range

std::string getAsString() const

Description

Convert this value to a literal form.

Declared at: llvm/include/llvm/TableGen/Record.h:567

llvm::Init* getBit(unsigned int Bit) const

Description

Get the \p Init value of the specified bit.

Declared at: llvm/include/llvm/TableGen/Record.h:571

Parameters

unsigned int Bit

unsigned int getNumBits() const

Declared at: llvm/include/llvm/TableGen/Record.h:549

bool isComplete() const

Description

Is this a complete value with no unset (uninitialized) subvalues?

Declared at: llvm/include/llvm/TableGen/Record.h:554

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:566

llvm::Init* resolveReferences(
    llvm::Resolver& R) const

Description

This function 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:569

Parameters

llvm::Resolver& R