LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | List of all members
llvm::BitsInit Class Reference

#include <Record.h>

Inheritance diagram for llvm::BitsInit:
Inheritance graph
[legend]
Collaboration diagram for llvm::BitsInit:
Collaboration graph
[legend]

Public Member Functions

void Profile (FoldingSetNodeID &ID) const
 
unsigned getNumBits () const
 
virtual InitconvertInitializerTo (RecTy *Ty) const
 
virtual InitconvertInitializerBitRange (const std::vector< unsigned > &Bits) const
 
virtual bool isComplete () const
 
bool allInComplete () const
 
virtual std::string getAsString () const
 getAsString - Convert this value to a string form. More...
 
virtual InitresolveReferences (Record &R, const RecordVal *RV) const
 
virtual InitgetBit (unsigned Bit) const
 
- Public Member Functions inherited from llvm::Init
InitKind getKind () const
 
virtual ~Init ()
 
void print (raw_ostream &OS) const
 print - Print out this value. More...
 
virtual std::string getAsUnquotedString () const
 
void dump () const
 
virtual InitconvertInitListSlice (const std::vector< unsigned > &Elements) const
 
virtual RecTygetFieldType (const std::string &FieldName) const
 
virtual InitgetFieldInit (Record &R, const RecordVal *RV, const std::string &FieldName) const
 
virtual InitgetBitVar () const
 
virtual unsigned getBitNum () const
 
- 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 BitsInitget (ArrayRef< Init * > Range)
 

Additional Inherited Members

- Protected Types inherited from llvm::Init
enum  InitKind {
  IK_BitInit, IK_BitsInit, IK_FirstTypedInit, 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::Init
 Init (InitKind K)
 

Detailed Description

BitsInit - { a, b, c } - Represents an initializer for a BitsRecTy value. It contains a vector of bits, whose size is determined by the type.

Definition at line 651 of file Record.h.

Member Function Documentation

bool llvm::BitsInit::allInComplete ( ) const
inline

Definition at line 681 of file Record.h.

References getBit(), getNumBits(), and llvm::Init::isComplete().

static bool llvm::BitsInit::classof ( const Init I)
inlinestatic

Definition at line 661 of file Record.h.

References llvm::Init::getKind(), and llvm::Init::IK_BitsInit.

Init * BitsInit::convertInitializerBitRange ( const std::vector< unsigned > &  Bits) const
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::Init.

Definition at line 480 of file Record.cpp.

References get(), getBit(), and getNumBits().

virtual Init* llvm::BitsInit::convertInitializerTo ( RecTy Ty) const
inlinevirtual

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 670 of file Record.h.

References llvm::RecTy::convertValue().

BitsInit * BitsInit::get ( ArrayRef< Init * >  Range)
static
std::string BitsInit::getAsString ( ) const
virtual

getAsString - Convert this value to a string form.

Implements llvm::Init.

Definition at line 491 of file Record.cpp.

References llvm::tgtok::Bit, getBit(), and getNumBits().

virtual Init* llvm::BitsInit::getBit ( unsigned  Bit) const
inlinevirtual

getBit - This method is used to return the initializer for the specified bit.

Implements llvm::Init.

Definition at line 690 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
virtual bool llvm::BitsInit::isComplete ( ) const
inlinevirtual

isComplete - This virtual method should be overridden by values that may not be completely specified yet.

Reimplemented from llvm::Init.

Definition at line 676 of file Record.h.

References getBit(), getNumBits(), and llvm::Init::isComplete().

void BitsInit::Profile ( FoldingSetNodeID ID) const

Definition at line 475 of file Record.cpp.

References ProfileBitsInit().

Init * BitsInit::resolveReferences ( Record R,
const RecordVal RV 
) const
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 515 of file Record.cpp.

References llvm::tgtok::Bit, fixBitInit(), get(), llvm::Init::getBit(), llvm::Init::getBitNum(), llvm::Init::getBitVar(), getNumBits(), and llvm::Init::resolveReferences().


The documentation for this class was generated from the following files: