LLVM API Documentation

llvm::IA64RegisterInfo Struct Reference

#include <IA64RegisterInfo.h>

Inheritance diagram for llvm::IA64RegisterInfo:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 IA64RegisterInfo ()
void storeRegToStackSlot (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned SrcReg, int FrameIndex, const TargetRegisterClass *RC) const
 Code Generation virtual methods...
void loadRegFromStackSlot (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned DestReg, int FrameIndex, const TargetRegisterClass *RC) const
void copyRegToReg (MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned DestReg, unsigned SrcReg, const TargetRegisterClass *RC) const
const unsigned * getCalleeSaveRegs () const
const TargetRegisterClass
*const * 
getCalleeSaveRegClasses () const
void eliminateCallFramePseudoInstr (MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator MI) const
void eliminateFrameIndex (MachineBasicBlock::iterator MI) const
void emitPrologue (MachineFunction &MF) const
void emitEpilogue (MachineFunction &MF, MachineBasicBlock &MBB) const
unsigned getRARegister () const
unsigned getFrameRegister (MachineFunction &MF) const

Detailed Description

Definition at line 24 of file IA64RegisterInfo.h.


Constructor & Destructor Documentation

IA64RegisterInfo::IA64RegisterInfo (  ) 

Definition at line 35 of file IA64RegisterInfo.cpp.


Member Function Documentation

void IA64RegisterInfo::storeRegToStackSlot ( MachineBasicBlock MBB,
MachineBasicBlock::iterator  MI,
unsigned  SrcReg,
int  FrameIndex,
const TargetRegisterClass RC 
) const

Code Generation virtual methods...

Definition at line 38 of file IA64RegisterInfo.cpp.

References llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, and RC.

void IA64RegisterInfo::loadRegFromStackSlot ( MachineBasicBlock MBB,
MachineBasicBlock::iterator  MI,
unsigned  DestReg,
int  FrameIndex,
const TargetRegisterClass RC 
) const

Definition at line 61 of file IA64RegisterInfo.cpp.

References llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, and RC.

void IA64RegisterInfo::copyRegToReg ( MachineBasicBlock MBB,
MachineBasicBlock::iterator  MI,
unsigned  DestReg,
unsigned  SrcReg,
const TargetRegisterClass RC 
) const

Definition at line 81 of file IA64RegisterInfo.cpp.

References llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, and RC.

const unsigned * IA64RegisterInfo::getCalleeSaveRegs (  )  const

Definition at line 93 of file IA64RegisterInfo.cpp.

const TargetRegisterClass *const * IA64RegisterInfo::getCalleeSaveRegClasses (  )  const

Definition at line 101 of file IA64RegisterInfo.cpp.

void IA64RegisterInfo::eliminateCallFramePseudoInstr ( MachineFunction MF,
MachineBasicBlock MBB,
MachineBasicBlock::iterator  MI 
) const

Definition at line 121 of file IA64RegisterInfo.cpp.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), Align, llvm::BuildMI(), llvm::MachineBasicBlock::erase(), llvm::TargetMachine::getFrameInfo(), llvm::MachineOperand::getImmedValue(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::TargetFrameInfo::getStackAlignment(), llvm::MachineFunction::getTarget(), hasFP(), llvm::MachineBasicBlock::insert(), MBB, and MF.

void IA64RegisterInfo::eliminateFrameIndex ( MachineBasicBlock::iterator  MI  )  const

Definition at line 155 of file IA64RegisterInfo.cpp.

References ADD, llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), llvm::MachineOperand::ChangeToRegister(), FrameIndex, llvm::MachineOperand::getFrameIndex(), llvm::MachineFunction::getFrameInfo(), llvm::MachineInstr::getNumOperands(), llvm::MachineFrameInfo::getObjectOffset(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineFrameInfo::getStackSize(), hasFP(), llvm::MachineBasicBlock::insert(), llvm::MachineOperand::isFrameIndex(), MBB, MF, MI, Offset, and llvm::MachineOperand::setUse().

void IA64RegisterInfo::emitPrologue ( MachineFunction MF  )  const

Definition at line 208 of file IA64RegisterInfo.cpp.

References ADD, llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), Align, llvm::MachineBasicBlock::begin(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), llvm::MachineFunction::front(), llvm::TargetMachine::getFrameInfo(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFunction::getInfo(), llvm::MachineFrameInfo::getMaxCallFrameSize(), llvm::TargetFrameInfo::getStackAlignment(), llvm::MachineFrameInfo::getStackSize(), llvm::MachineFunction::getTarget(), llvm::MachineFrameInfo::hasCalls(), hasFP(), llvm::MachineBasicBlock::insert(), llvm::MachineFunction::isPhysRegUsed(), MBB, MF, MI, NumBytes, and llvm::MachineFrameInfo::setStackSize().

void IA64RegisterInfo::emitEpilogue ( MachineFunction MF,
MachineBasicBlock MBB 
) const

Definition at line 308 of file IA64RegisterInfo.cpp.

References ADD, llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), llvm::MachineFunction::getFrameInfo(), llvm::MachineFrameInfo::getStackSize(), hasFP(), llvm::MachineBasicBlock::insert(), MBB, MF, MI, NumBytes, llvm::prior(), and RET.

unsigned IA64RegisterInfo::getRARegister (  )  const

Definition at line 347 of file IA64RegisterInfo.cpp.

unsigned IA64RegisterInfo::getFrameRegister ( MachineFunction MF  )  const

Definition at line 352 of file IA64RegisterInfo.cpp.

References hasFP(), and MF.


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