LLVM API Documentation
#include <PPCRegisterInfo.h>
Inheritance diagram for llvm::PPCRegisterInfo:
Definition at line 25 of file PPCRegisterInfo.h.
PPCRegisterInfo::PPCRegisterInfo | ( | ) |
Definition at line 38 of file PPCRegisterInfo.cpp.
void PPCRegisterInfo::copyRegToReg | ( | MachineBasicBlock & | MBB, | |
MachineBasicBlock::iterator | MBBI, | |||
unsigned | DestReg, | |||
unsigned | SrcReg, | |||
const TargetRegisterClass * | RC | |||
) | const |
Definition at line 120 of file PPCRegisterInfo.cpp.
References abort(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, RC, and llvm::ISD::VOR.
void PPCRegisterInfo::eliminateCallFramePseudoInstr | ( | MachineFunction & | MF, | |
MachineBasicBlock & | MBB, | |||
MachineBasicBlock::iterator | I | |||
) | const |
Definition at line 212 of file PPCRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addSImm(), 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(), MBB, and MF.
void PPCRegisterInfo::eliminateFrameIndex | ( | MachineBasicBlock::iterator | II | ) | const |
Definition at line 240 of file PPCRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addSImm(), llvm::BuildMI(), llvm::ISD::FrameIndex, llvm::MachineOperand::getFrameIndex(), llvm::MachineFunction::getFrameInfo(), llvm::MachineOperand::getImmedValue(), llvm::MachineInstr::getNumOperands(), llvm::MachineFrameInfo::getObjectOffset(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), llvm::MachineFrameInfo::getStackSize(), hasFP(), llvm::MachineOperand::isFrameIndex(), MBB, MF, MI, llvm::MachineOperand::MO_SignExtendedImmed, Offset, second, llvm::MachineInstr::SetMachineOperandConst(), llvm::MachineInstr::SetMachineOperandReg(), llvm::MachineInstr::setOpcode(), and llvm::PPCISD::STD_32.
void PPCRegisterInfo::emitEpilogue | ( | MachineFunction & | MF, | |
MachineBasicBlock & | MBB | |||
) | const |
Definition at line 438 of file PPCRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addSImm(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), llvm::TargetMachine::getFrameInfo(), llvm::MachineFunction::getFrameInfo(), llvm::TargetFrameInfo::getStackAlignment(), llvm::MachineFunction::getTarget(), hasFP(), MBB, MF, NumBytes, and llvm::prior().
void PPCRegisterInfo::emitPrologue | ( | MachineFunction & | MF | ) | const |
Definition at line 338 of file PPCRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::MachineInstrBuilder::addSImm(), Align, llvm::MachineBasicBlock::begin(), llvm::BuildMI(), llvm::MachineBasicBlock::end(), llvm::MachineFunction::front(), llvm::TargetMachine::getFrameInfo(), llvm::MachineFunction::getFrameInfo(), llvm::MachineDebugInfo::getFrameMoves(), llvm::MachineFrameInfo::getMachineDebugInfo(), llvm::MachineFrameInfo::getMaxAlignment(), llvm::MachineFrameInfo::getMaxCallFrameSize(), llvm::TargetFrameInfo::getStackAlignment(), llvm::MachineFrameInfo::getStackSize(), llvm::MachineFunction::getTarget(), llvm::MachineFunction::getUsedPhysregs(), HandleVRSaveUpdate(), llvm::MachineFrameInfo::hasCalls(), hasFP(), llvm::MachineDebugInfo::hasInfo(), llvm::isInt16(), llvm::isPowerOf2_32(), llvm::Log2_32(), MBB, MF, llvm::MachineDebugInfo::NextLabelID(), NumBytes, llvm::MachineFrameInfo::setStackSize(), Src, and llvm::MachineLocation::VirtualFP.
MachineInstr * PPCRegisterInfo::foldMemoryOperand | ( | MachineInstr * | MI, | |
unsigned | OpNum, | |||
int | FrameIndex | |||
) | const [virtual] |
foldMemoryOperand - PowerPC (like most RISC's) can only fold spills into copy instructions, turning them into load/store instructions.
Definition at line 144 of file PPCRegisterInfo.cpp.
References llvm::addFrameReference(), llvm::BuildMI(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), and MI.
unsigned PPCRegisterInfo::getFrameRegister | ( | MachineFunction & | MF | ) | const |
void PPCRegisterInfo::getInitialFrameState | ( | std::vector< MachineMove * > & | Moves | ) | const |
Definition at line 479 of file PPCRegisterInfo.cpp.
References Src, and llvm::MachineLocation::VirtualFP.
unsigned PPCRegisterInfo::getRARegister | ( | ) | const |
Definition at line 471 of file PPCRegisterInfo.cpp.
void PPCRegisterInfo::loadRegFromStackSlot | ( | MachineBasicBlock & | MBB, | |
MachineBasicBlock::iterator | MBBI, | |||
unsigned | DestReg, | |||
int | FrameIndex, | |||
const TargetRegisterClass * | RC | |||
) | const |
Definition at line 88 of file PPCRegisterInfo.cpp.
References abort(), llvm::addFrameReference(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, and RC.
void PPCRegisterInfo::storeRegToStackSlot | ( | MachineBasicBlock & | MBB, | |
MachineBasicBlock::iterator | MBBI, | |||
unsigned | SrcReg, | |||
int | FrameIndex, | |||
const TargetRegisterClass * | RC | |||
) | const |
Code Generation virtual methods...
Definition at line 51 of file PPCRegisterInfo.cpp.
References abort(), llvm::addFrameReference(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), MBB, llvm::PPCISD::MFCR, and RC.