LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::TargetRegClassInfo Class Reference

#include <SparcV9RegInfo.h>

Inheritance diagram for llvm::TargetRegClassInfo:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

unsigned getRegClassID () const
unsigned getNumOfAvailRegs () const
unsigned getNumOfAllRegs () const
virtual void markColorsUsed (unsigned RegInClass, int UserRegType, int RegTypeWanted, std::vector< bool > &IsColorUsedArr) const
virtual int findUnusedColor (int RegTypeWanted, const std::vector< bool > &IsColorUsedArr) const
virtual void colorIGNode (IGNode *Node, const std::vector< bool > &IsColorUsedArr) const =0
virtual bool isRegVolatile (int Reg) const =0
virtual bool modifiedByCall (int Reg) const
virtual const char *const getRegName (unsigned reg) const =0
 TargetRegClassInfo (unsigned ID, unsigned NVR, unsigned NAR)

Protected Attributes

const unsigned RegClassID
const unsigned NumOfAvailRegs
const unsigned NumOfAllRegs

Detailed Description

---------------------------------------------------------------------------- Interface to description of machine register class (e.g., int reg class float reg class etc)

Definition at line 41 of file SparcV9RegInfo.h.


Constructor & Destructor Documentation

llvm::TargetRegClassInfo::TargetRegClassInfo unsigned  ID,
unsigned  NVR,
unsigned  NAR
[inline]
 

Definition at line 98 of file SparcV9RegInfo.h.


Member Function Documentation

virtual void llvm::TargetRegClassInfo::colorIGNode IGNode Node,
const std::vector< bool > &  IsColorUsedArr
const [pure virtual]
 

Implemented in llvm::SparcV9IntRegClass, llvm::SparcV9FloatRegClass, llvm::SparcV9IntCCRegClass, llvm::SparcV9FloatCCRegClass, and llvm::SparcV9SpecialRegClass.

virtual int llvm::TargetRegClassInfo::findUnusedColor int  RegTypeWanted,
const std::vector< bool > &  IsColorUsedArr
const [inline, virtual]
 

Reimplemented in llvm::SparcV9FloatRegClass.

Definition at line 72 of file SparcV9RegInfo.h.

References getNumOfAvailRegs().

Referenced by llvm::SparcV9FloatRegClass::findUnusedColor(), and llvm::RegClass::getUnusedColor().

unsigned llvm::TargetRegClassInfo::getNumOfAllRegs  )  const [inline]
 

Definition at line 50 of file SparcV9RegInfo.h.

References NumOfAllRegs.

Referenced by llvm::RegClass::clearColorsUsed(), and llvm::RegClass::RegClass().

unsigned llvm::TargetRegClassInfo::getNumOfAvailRegs  )  const [inline]
 

Definition at line 49 of file SparcV9RegInfo.h.

References NumOfAvailRegs.

Referenced by findUnusedColor(), llvm::SparcV9FloatRegClass::findUnusedColor(), and llvm::RegClass::getNumOfAvailRegs().

unsigned llvm::TargetRegClassInfo::getRegClassID  )  const [inline]
 

Definition at line 48 of file SparcV9RegInfo.h.

References RegClassID.

virtual const char* const llvm::TargetRegClassInfo::getRegName unsigned  reg  )  const [pure virtual]
 

Implemented in llvm::SparcV9IntRegClass, llvm::SparcV9FloatRegClass, llvm::SparcV9IntCCRegClass, llvm::SparcV9FloatCCRegClass, and llvm::SparcV9SpecialRegClass.

virtual bool llvm::TargetRegClassInfo::isRegVolatile int  Reg  )  const [pure virtual]
 

Implemented in llvm::SparcV9IntRegClass, llvm::SparcV9FloatRegClass, llvm::SparcV9IntCCRegClass, llvm::SparcV9FloatCCRegClass, and llvm::SparcV9SpecialRegClass.

virtual void llvm::TargetRegClassInfo::markColorsUsed unsigned  RegInClass,
int  UserRegType,
int  RegTypeWanted,
std::vector< bool > &  IsColorUsedArr
const [inline, virtual]
 

Reimplemented in llvm::SparcV9FloatRegClass.

Definition at line 56 of file SparcV9RegInfo.h.

References NumOfAllRegs.

Referenced by llvm::RegClass::markColorsUsed().

virtual bool llvm::TargetRegClassInfo::modifiedByCall int  Reg  )  const [inline, virtual]
 

Reimplemented in llvm::SparcV9IntRegClass.

Definition at line 94 of file SparcV9RegInfo.h.


Member Data Documentation

const unsigned llvm::TargetRegClassInfo::NumOfAllRegs [protected]
 

Reimplemented in llvm::SparcV9IntRegClass, and llvm::SparcV9FloatRegClass.

Definition at line 45 of file SparcV9RegInfo.h.

Referenced by getNumOfAllRegs(), and markColorsUsed().

const unsigned llvm::TargetRegClassInfo::NumOfAvailRegs [protected]
 

Reimplemented in llvm::SparcV9IntRegClass, and llvm::SparcV9FloatRegClass.

Definition at line 44 of file SparcV9RegInfo.h.

Referenced by getNumOfAvailRegs().

const unsigned llvm::TargetRegClassInfo::RegClassID [protected]
 

Definition at line 43 of file SparcV9RegInfo.h.

Referenced by getRegClassID().


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