LLVM API Documentation

Public Types | Public Member Functions | Public Attributes
llvm::MCRegisterClass Class Reference

MCRegisterClass - Base class of TargetRegisterClass. More...

#include <MCRegisterInfo.h>

Collaboration diagram for llvm::MCRegisterClass:
Collaboration graph
[legend]

List of all members.

Public Types

typedef const MCPhysRegiterator
typedef const MCPhysRegconst_iterator

Public Member Functions

unsigned getID () const
const char * getName () const
iterator begin () const
iterator end () const
unsigned getNumRegs () const
unsigned getRegister (unsigned i) const
bool contains (unsigned Reg) const
bool contains (unsigned Reg1, unsigned Reg2) const
 contains - Return true if both registers are in this class.
unsigned getSize () const
unsigned getAlignment () const
int getCopyCost () const
bool isAllocatable () const

Public Attributes

const char * Name
const iterator RegsBegin
const uint8_t *const RegSet
const uint16_t RegsSize
const uint16_t RegSetSize
const uint16_t ID
const uint16_t RegSize
const uint16_t Alignment
const int8_t CopyCost
const bool Allocatable

Detailed Description

MCRegisterClass - Base class of TargetRegisterClass.

Definition at line 30 of file MCRegisterInfo.h.


Member Typedef Documentation

Definition at line 33 of file MCRegisterInfo.h.

Definition at line 32 of file MCRegisterInfo.h.


Member Function Documentation

begin/end - Return all of the registers in this class.

Definition at line 55 of file MCRegisterInfo.h.

References RegsBegin.

Referenced by llvm::TargetRegisterClass::begin(), and getReg().

contains - Return true if the specified register is included in this register class. This does not include virtual registers.

Definition at line 71 of file MCRegisterInfo.h.

References RegSet, and RegSetSize.

Referenced by llvm::TargetRegisterClass::contains(), contains(), llvm::MCRegisterInfo::getMatchingSuperReg(), llvm::ARMInstPrinter::printInst(), llvm::AArch64InstPrinter::printVectorList(), and llvm::MipsRegInfoRecord::SetPhysRegUsed().

bool llvm::MCRegisterClass::contains ( unsigned  Reg1,
unsigned  Reg2 
) const [inline]

contains - Return true if both registers are in this class.

Definition at line 80 of file MCRegisterInfo.h.

References contains().

Definition at line 56 of file MCRegisterInfo.h.

References RegsBegin, and RegsSize.

Referenced by llvm::TargetRegisterClass::end().

getAlignment - Return the minimum required alignment for a register of this class.

Definition at line 90 of file MCRegisterInfo.h.

References Alignment.

Referenced by llvm::TargetRegisterClass::getAlignment().

getCopyCost - Return the cost of copying a value between two registers in this class. A negative number means the register class is very expensive to copy e.g. status flag register classes.

Definition at line 95 of file MCRegisterInfo.h.

References CopyCost.

Referenced by llvm::TargetRegisterClass::getCopyCost().

getID() - Return the register class ID number.

Definition at line 47 of file MCRegisterInfo.h.

References ID.

Referenced by llvm::TargetRegisterClass::getID().

const char* llvm::MCRegisterClass::getName ( ) const [inline]

getName() - Return the register class name for debugging.

Definition at line 51 of file MCRegisterInfo.h.

References Name.

Referenced by llvm::TargetRegisterClass::getName().

getNumRegs - Return the number of registers in this class.

Definition at line 60 of file MCRegisterInfo.h.

References RegsSize.

Referenced by llvm::TargetRegisterClass::getNumRegs(), and getRegister().

getRegister - Return the specified register in the class.

Definition at line 64 of file MCRegisterInfo.h.

References getNumRegs(), and RegsBegin.

Referenced by llvm::TargetRegisterClass::getRegister().

getSize - Return the size of the register in bytes, which is also the size of a stack slot allocated to hold a spilled copy of this register.

Definition at line 86 of file MCRegisterInfo.h.

References RegSize.

Referenced by llvm::TargetRegisterClass::getSize().

isAllocatable - Return true if this register class may be used to create virtual registers.

Definition at line 99 of file MCRegisterInfo.h.

References Allocatable.

Referenced by llvm::TargetRegisterClass::isAllocatable().


Member Data Documentation

Definition at line 41 of file MCRegisterInfo.h.

Referenced by getAlignment().

Definition at line 43 of file MCRegisterInfo.h.

Referenced by isAllocatable().

Definition at line 42 of file MCRegisterInfo.h.

Referenced by getCopyCost().

Definition at line 40 of file MCRegisterInfo.h.

Referenced by getID().

Definition at line 35 of file MCRegisterInfo.h.

Referenced by getName().

Definition at line 36 of file MCRegisterInfo.h.

Referenced by begin(), end(), and getRegister().

Definition at line 37 of file MCRegisterInfo.h.

Referenced by contains().

Definition at line 39 of file MCRegisterInfo.h.

Referenced by contains().

Definition at line 41 of file MCRegisterInfo.h.

Referenced by getSize().

Definition at line 38 of file MCRegisterInfo.h.

Referenced by end(), and getNumRegs().


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