LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
llvm::HexagonRegisterInfo Struct Reference

#include <HexagonRegisterInfo.h>

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

Public Member Functions

 HexagonRegisterInfo (HexagonSubtarget &st)
 
const uint16_t * getCalleeSavedRegs (const MachineFunction *MF=0) const
 Code Generation virtual methods... More...
 
const TargetRegisterClass *const * getCalleeSavedRegClasses (const MachineFunction *MF=0) const
 
BitVector getReservedRegs (const MachineFunction &MF) const
 
void eliminateFrameIndex (MachineBasicBlock::iterator II, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=NULL) const
 
void determineFrameLayout (MachineFunction &MF) const
 
bool requiresRegisterScavenging (const MachineFunction &MF) const
 
bool trackLivenessAfterRegAlloc (const MachineFunction &MF) const
 
unsigned getRARegister () const
 
unsigned getFrameRegister (const MachineFunction &MF) const
 
unsigned getFrameRegister () const
 
unsigned getStackRegister () const
 

Public Attributes

HexagonSubtargetSubtarget
 

Detailed Description

Definition at line 45 of file HexagonRegisterInfo.h.

Constructor & Destructor Documentation

HexagonRegisterInfo::HexagonRegisterInfo ( HexagonSubtarget st)

Definition at line 41 of file HexagonRegisterInfo.cpp.

Member Function Documentation

void llvm::HexagonRegisterInfo::determineFrameLayout ( MachineFunction MF) const

determineFrameLayout - Determine the size of the frame and maximum call frame size.

void HexagonRegisterInfo::eliminateFrameIndex ( MachineBasicBlock::iterator  II,
int  SPAdj,
unsigned  FIOperandNum,
RegScavenger RS = NULL 
) const
const TargetRegisterClass *const * HexagonRegisterInfo::getCalleeSavedRegClasses ( const MachineFunction MF = 0) const
const uint16_t * HexagonRegisterInfo::getCalleeSavedRegs ( const MachineFunction MF = 0) const
unsigned HexagonRegisterInfo::getFrameRegister ( const MachineFunction MF) const
unsigned HexagonRegisterInfo::getFrameRegister ( ) const

Definition at line 290 of file HexagonRegisterInfo.cpp.

Referenced by eliminateFrameIndex().

unsigned HexagonRegisterInfo::getRARegister ( ) const
BitVector HexagonRegisterInfo::getReservedRegs ( const MachineFunction MF) const
unsigned HexagonRegisterInfo::getStackRegister ( ) const
bool llvm::HexagonRegisterInfo::requiresRegisterScavenging ( const MachineFunction MF) const
inline

requiresRegisterScavenging - returns true since we may need scavenging for a temporary register when generating hardware loop instructions.

Definition at line 68 of file HexagonRegisterInfo.h.

bool llvm::HexagonRegisterInfo::trackLivenessAfterRegAlloc ( const MachineFunction MF) const
inline

Definition at line 72 of file HexagonRegisterInfo.h.

Member Data Documentation

HexagonSubtarget& llvm::HexagonRegisterInfo::Subtarget

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