LLVM API Documentation
#include <MachineFunction.h>
Definition at line 60 of file MachineFunction.h.
| typedef BasicBlockListType::iterator llvm::MachineFunction::iterator |
Definition at line 224 of file MachineFunction.h.
| typedef BasicBlockListType::const_iterator llvm::MachineFunction::const_iterator |
Definition at line 225 of file MachineFunction.h.
| typedef std::reverse_iterator<const_iterator> llvm::MachineFunction::const_reverse_iterator |
Definition at line 226 of file MachineFunction.h.
| typedef std::reverse_iterator<iterator> llvm::MachineFunction::reverse_iterator |
Definition at line 227 of file MachineFunction.h.
| MachineFunction::MachineFunction | ( | const Function * | Fn, | |
| const TargetMachine & | TM | |||
| ) |
Definition at line 110 of file MachineFunction.cpp.
References Alignment, llvm::BumpPtrAllocator::Allocate(), llvm::TargetMachine::getFrameInfo(), llvm::TargetMachine::getRegisterInfo(), llvm::TargetMachine::getRelocationModel(), llvm::TargetMachine::getTargetData(), llvm::Type::Int32Ty, llvm::Reloc::PIC_, and TD.
Referenced by construct().
| MachineFunction::~MachineFunction | ( | ) |
Definition at line 134 of file MachineFunction.cpp.
References llvm::BumpPtrAllocator::Deallocate(), llvm::MachineConstantPool::~MachineConstantPool(), llvm::MachineFunctionInfo::~MachineFunctionInfo(), and llvm::MachineRegisterInfo::~MachineRegisterInfo().
| const Function* llvm::MachineFunction::getFunction | ( | ) | const [inline] |
getFunction - Return the LLVM function that this machine code represents
Definition at line 107 of file MachineFunction.h.
Referenced by llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::MipsRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::X86ATTAsmPrinter::emitFunctionHeader(), llvm::AsmPrinter::EmitJumpTableInfo(), llvm::X86RegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), llvm::PIC16TargetLowering::ExpandFrameIndex(), llvm::MachOCodeEmitter::finishFunction(), llvm::ELFCodeEmitter::finishFunction(), llvm::AsmPrinter::getCurrentFunctionEHName(), llvm::DOTGraphTraits< SelectionDAG * >::getGraphName(), llvm::DOTGraphTraits< ScheduleDAG * >::getGraphName(), llvm::DOTGraphTraits< const MachineFunction * >::getGraphName(), llvm::X86TargetLowering::IsEligibleForTailCallOptimization(), llvm::PPCTargetLowering::IsEligibleForTailCallOptimization(), llvm::PIC16InstrInfo::loadRegFromStackSlot(), LowerRET(), llvm::XCoreRegisterInfo::needsFrameMoves(), llvm::AsmPrinter::PrintSpecial(), llvm::XCoreRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::SelectionDAGISel::runOnFunction(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), llvm::X86ATTAsmPrinter::runOnMachineFunction(), llvm::SimpleRegisterCoalescing::runOnMachineFunction(), llvm::AsmPrinter::SetupMachineFunction(), llvm::MachOCodeEmitter::startFunction(), llvm::PIC16InstrInfo::storeRegToStackSlot(), viewCFG(), and llvm::ScheduleDAG::viewGraph().
| const TargetMachine& llvm::MachineFunction::getTarget | ( | ) | const [inline] |
getTarget - Return the target machine this machine code is compiled with
Definition at line 111 of file MachineFunction.h.
Referenced by llvm::MipsRegisterInfo::adjustMipsStackFrame(), CalculateParameterAndLinkageAreaSize(), llvm::SPURegisterInfo::determineFrameLayout(), llvm::PPCRegisterInfo::determineFrameLayout(), llvm::XCoreRegisterInfo::eliminateCallFramePseudoInstr(), llvm::IA64RegisterInfo::eliminateCallFramePseudoInstr(), llvm::ARMRegisterInfo::eliminateCallFramePseudoInstr(), llvm::AlphaRegisterInfo::eliminateCallFramePseudoInstr(), llvm::JITDwarfEmitter::EmitDwarfTable(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitFrameMoves(), llvm::X86RegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::MipsRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), llvm::RegScavenger::enterBasicBlock(), llvm::JITDwarfEmitter::GetDwarfTableSizeInBytes(), llvm::TargetRegisterInfo::getFrameIndexOffset(), llvm::PPCInstrInfo::GetInstSizeInBytes(), llvm::ARMInstrInfo::GetInstSizeInBytes(), GetInstSizeWithDesc(), llvm::SelectionDAG::getTarget(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::VirtRegMap::print(), llvm::MachineOperand::print(), llvm::MachineFrameInfo::print(), print(), llvm::MachineBasicBlock::print(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::MipsRegisterInfo::processFunctionBeforeFrameFinalized(), llvm::SimpleRegisterCoalescing::runOnMachineFunction(), llvm::LiveVariables::runOnMachineFunction(), llvm::LiveIntervals::runOnMachineFunction(), llvm::FunctionLoweringInfo::set(), and llvm::SplitCriticalMachineEdge().
| MachineRegisterInfo& llvm::MachineFunction::getRegInfo | ( | ) | [inline] |
getRegInfo - Return information about the registers currently in use.
Definition at line 115 of file MachineFunction.h.
Referenced by AddLiveIn(), llvm::VirtRegMap::assignVirt2StackSlot(), llvm::MachineOperand::ChangeToRegister(), CheckDAGForTailCallsAndFixThem(), llvm::PPCTargetLowering::EmitAtomicBinary(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::AlphaTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), llvm::X86RegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::RegScavenger::enterBasicBlock(), llvm::X86InstrInfo::getGlobalBaseReg(), llvm::SelectionDAGLowering::GetRegistersForValue(), llvm::VirtRegMap::grow(), HandleVRSaveUpdate(), interferes(), llvm::X86InstrInfo::isReallyTriviallyReMaterializable(), llvm::SparcTargetLowering::LowerArguments(), llvm::IA64TargetLowering::LowerArguments(), LowerCTPOP(), LowerFORMAL_ARGUMENT(), LowerFORMAL_ARGUMENTS(), LowerLOAD(), LowerRET(), LowerSTORE(), LowerVECTOR_SHUFFLE(), MustSaveLR(), llvm::VirtRegMap::print(), llvm::XCoreRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::SPURegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::PPCRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::SelectionDAGISel::runOnFunction(), llvm::SimpleRegisterCoalescing::runOnMachineFunction(), llvm::LiveVariables::runOnMachineFunction(), llvm::LiveIntervals::runOnMachineFunction(), llvm::FunctionLoweringInfo::set(), llvm::MachineOperand::setReg(), and llvm::VirtRegMap::VirtRegMap().
| const MachineRegisterInfo& llvm::MachineFunction::getRegInfo | ( | ) | const [inline] |
Definition at line 116 of file MachineFunction.h.
| MachineFrameInfo* llvm::MachineFunction::getFrameInfo | ( | ) | [inline] |
getFrameInfo - Return the frame info object for the current function. This object contains information about objects allocated on the stack frame of the current function in an abstract way.
Definition at line 122 of file MachineFunction.h.
Referenced by llvm::addFrameReference(), llvm::VirtRegMap::addSpillSlotUse(), llvm::MipsRegisterInfo::adjustMipsStackFrame(), llvm::VirtRegMap::assignVirt2StackSlot(), CalculateTailCallArgDest(), CheckDAGForTailCallsAndFixThem(), llvm::SelectionDAG::CreateStackTemporary(), llvm::SPURegisterInfo::determineFrameLayout(), llvm::PPCRegisterInfo::determineFrameLayout(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::SPURegisterInfo::eliminateFrameIndex(), llvm::SparcRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::MipsRegisterInfo::eliminateFrameIndex(), llvm::IA64RegisterInfo::eliminateFrameIndex(), llvm::ARMRegisterInfo::eliminateFrameIndex(), llvm::AlphaRegisterInfo::eliminateFrameIndex(), llvm::XCoreRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitEpilogue(), llvm::SPURegisterInfo::emitEpilogue(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::MipsRegisterInfo::emitEpilogue(), llvm::IA64RegisterInfo::emitEpilogue(), llvm::ARMRegisterInfo::emitEpilogue(), llvm::AlphaRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitFrameMoves(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::XCoreRegisterInfo::emitPrologue(), llvm::X86RegisterInfo::emitPrologue(), llvm::SPURegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::MipsRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), EmitTailCallStoreFPAndRetAddr(), EmitTailCallStoreRetAddr(), estimateStackSize(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::X86RegisterInfo::getCalleeSavedRegClasses(), llvm::X86RegisterInfo::getCalleeSavedRegs(), llvm::VirtRegMap::getEmergencySpillSlot(), llvm::X86RegisterInfo::getFrameIndexOffset(), llvm::TargetRegisterInfo::getFrameIndexOffset(), llvm::X86TargetLowering::getReturnAddressFrameIndex(), llvm::XCoreRegisterInfo::hasFP(), llvm::X86RegisterInfo::hasFP(), llvm::SPURegisterInfo::hasFP(), llvm::PPCRegisterInfo::hasFP(), llvm::MipsRegisterInfo::hasFP(), llvm::IA64RegisterInfo::hasFP(), llvm::ARMRegisterInfo::hasFP(), llvm::AlphaRegisterInfo::hasFP(), llvm::X86RegisterInfo::hasReservedCallFrame(), llvm::ARMRegisterInfo::hasReservedCallFrame(), InferAlignment(), llvm::XCoreInstrInfo::isInvariantLoad(), llvm::X86InstrInfo::isInvariantLoad(), llvm::SparcTargetLowering::LowerArguments(), llvm::IA64TargetLowering::LowerArguments(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), LowerFORMAL_ARGUMENT(), LowerFORMAL_ARGUMENTS(), MeetsMaxMemopRequirement(), needsFP(), llvm::XCoreRegisterInfo::needsFrameMoves(), llvm::X86RegisterInfo::needsStackRealignment(), PerformShuffleCombine(), llvm::XCoreRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::X86RegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::PPCRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::X86RegisterInfo::processFunctionBeforeFrameFinalized(), llvm::MipsRegisterInfo::processFunctionBeforeFrameFinalized(), llvm::VirtRegMap::RemoveMachineInstrFromMaps(), llvm::FunctionLoweringInfo::set(), and llvm::XCoreInstrInfo::spillCalleeSavedRegisters().
| const MachineFrameInfo* llvm::MachineFunction::getFrameInfo | ( | ) | const [inline] |
Definition at line 123 of file MachineFunction.h.
| MachineJumpTableInfo* llvm::MachineFunction::getJumpTableInfo | ( | ) | [inline] |
getJumpTableInfo - Return the jump table info object for the current function. This object contains information about jump tables for switch instructions in the current function.
Definition at line 129 of file MachineFunction.h.
Referenced by llvm::MachOCodeEmitter::finishFunction(), llvm::ARMInstrInfo::GetInstSizeInBytes(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), and llvm::X86ATTAsmPrinter::runOnMachineFunction().
| const MachineJumpTableInfo* llvm::MachineFunction::getJumpTableInfo | ( | ) | const [inline] |
Definition at line 130 of file MachineFunction.h.
| MachineConstantPool* llvm::MachineFunction::getConstantPool | ( | ) | [inline] |
getConstantPool - Return the constant pool object for the current function.
Definition at line 135 of file MachineFunction.h.
Referenced by llvm::ARMRegisterInfo::emitLoadConstPool(), llvm::MachOCodeEmitter::finishFunction(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), and llvm::X86ATTAsmPrinter::runOnMachineFunction().
| const MachineConstantPool* llvm::MachineFunction::getConstantPool | ( | ) | const [inline] |
Definition at line 136 of file MachineFunction.h.
| Ty* llvm::MachineFunction::getInfo | ( | ) | [inline] |
MachineFunctionInfo - Keep track of various per-function pieces of information for backends that would like to do so.
Definition at line 142 of file MachineFunction.h.
References llvm::BumpPtrAllocator::Allocate(), and Ty.
Referenced by llvm::MipsRegisterInfo::adjustMipsStackFrame(), CalculateTailCallSPDiff(), llvm::ARMInstrInfo::copyRegToReg(), llvm::ARMRegisterInfo::eliminateCallFramePseudoInstr(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::ARMRegisterInfo::eliminateFrameIndex(), llvm::XCoreRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitEpilogue(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::MipsRegisterInfo::emitEpilogue(), llvm::ARMRegisterInfo::emitEpilogue(), llvm::XCoreRegisterInfo::emitPrologue(), llvm::X86RegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::MipsRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::X86RegisterInfo::getFrameIndexOffset(), llvm::X86InstrInfo::getGlobalBaseReg(), llvm::X86TargetLowering::getReturnAddressFrameIndex(), llvm::X86RegisterInfo::hasFP(), llvm::ARMRegisterInfo::hasReservedCallFrame(), llvm::ARMJITInfo::Initialize(), llvm::ARMInstrInfo::InsertBranch(), llvm::ARMInstrInfo::loadRegFromAddr(), llvm::ARMInstrInfo::loadRegFromStackSlot(), llvm::IA64TargetLowering::LowerCallTo(), MustSaveLR(), needsFP(), llvm::XCoreRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::PPCRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), llvm::X86RegisterInfo::processFunctionBeforeFrameFinalized(), llvm::MipsRegisterInfo::processFunctionBeforeFrameFinalized(), llvm::ARMInstrInfo::RemoveBranch(), llvm::ARMRegisterInfo::requiresRegisterScavenging(), llvm::ARMInstrInfo::restoreCalleeSavedRegisters(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), llvm::X86ATTAsmPrinter::runOnMachineFunction(), llvm::XCoreInstrInfo::spillCalleeSavedRegisters(), llvm::X86InstrInfo::spillCalleeSavedRegisters(), llvm::ARMInstrInfo::spillCalleeSavedRegisters(), spillsCR(), llvm::PPCInstrInfo::storeRegToAddr(), llvm::ARMInstrInfo::storeRegToAddr(), llvm::PPCInstrInfo::storeRegToStackSlot(), and llvm::ARMInstrInfo::storeRegToStackSlot().
| const Ty* llvm::MachineFunction::getInfo | ( | ) | const [inline] |
Definition at line 157 of file MachineFunction.h.
| MachineBasicBlock* llvm::MachineFunction::getBlockNumbered | ( | unsigned | N | ) | [inline] |
getBlockNumbered - MachineBasicBlocks are automatically numbered when they are inserted into the machine function. The block number for a machine basic block can be found by using the MBB::getBlockNumber method, this method provides the inverse mapping.
Definition at line 166 of file MachineFunction.h.
Referenced by llvm::LiveIntervals::addIntervalsForSpills().
| unsigned llvm::MachineFunction::getNumBlockIDs | ( | ) | const [inline] |
getNumBlockIDs - Return the number of MBB ID's allocated.
Definition at line 174 of file MachineFunction.h.
Referenced by llvm::LiveIntervals::addIntervalsForSpills(), llvm::LiveIntervals::computeNumbering(), llvm::LiveVariables::getVarInfo(), and llvm::LiveVariables::runOnMachineFunction().
| void MachineFunction::RenumberBlocks | ( | MachineBasicBlock * | MBB = 0 |
) |
RenumberBlocks - This discards all of the MachineBasicBlock numbers and recomputes them. This guarantees that the MBB numbers are sequential, dense, and match the ordering of the blocks within the function. If a specific MachineBasicBlock is specified, only that block and those after it are renumbered.
RenumberBlocks - This discards all of the MachineBasicBlock numbers and recomputes them. This guarantees that the MBB numbers are sequential, dense, and match the ordering of the blocks within the function. If a specific MachineBasicBlock is specified, only that block and those after it are renumbered.
Definition at line 154 of file MachineFunction.cpp.
References begin(), E, empty(), end(), MBBI, and llvm::prior().
| void MachineFunction::print | ( | std::ostream & | OS | ) | const |
print - Print out the MachineFunction in a format suitable for debugging to the specified stream.
Definition at line 246 of file MachineFunction.cpp.
References BB, begin(), E, end(), llvm::TargetRegisterInfo::getName(), llvm::Value::getName(), llvm::TargetMachine::getRegisterInfo(), getTarget(), llvm::MachineRegisterInfo::livein_begin(), llvm::MachineRegisterInfo::livein_empty(), llvm::MachineRegisterInfo::livein_end(), llvm::MachineRegisterInfo::liveout_begin(), llvm::MachineRegisterInfo::liveout_empty(), llvm::MachineRegisterInfo::liveout_end(), llvm::MachineBasicBlock::print(), llvm::MachineConstantPool::print(), llvm::MachineJumpTableInfo::print(), llvm::MachineFrameInfo::print(), and TRI.
| void llvm::MachineFunction::print | ( | std::ostream * | OS | ) | const [inline] |
| void MachineFunction::viewCFG | ( | ) | const |
viewCFG - This function is meant for use from the debugger. You can just say 'call F->viewCFG()' and a ghostview window should pop up from the program, displaying the CFG of the current function with the code for each basic block inside. This depends on there being a 'dot' and 'gv' program in your path.
Definition at line 335 of file MachineFunction.cpp.
References llvm::cerr(), getFunction(), llvm::Intrinsic::getName(), and llvm::ViewGraph().
Referenced by viewCFGOnly().
| void MachineFunction::viewCFGOnly | ( | ) | const |
viewCFGOnly - This function is meant for use from the debugger. It works just like viewCFG, but it does not include the contents of basic blocks into the nodes, just the label. If you are only interested in the CFG this can make the graph smaller.
Definition at line 345 of file MachineFunction.cpp.
References viewCFG().
| void MachineFunction::dump | ( | ) | const |
dump - Print the current MachineFunction to cerr, useful for debugger use.
Definition at line 242 of file MachineFunction.cpp.
References llvm::cerr(), and print().
| MachineFunction & MachineFunction::construct | ( | const Function * | F, | |
| const TargetMachine & | TM | |||
| ) | [static] |
construct - Allocate and initialize a MachineFunction for a given Function and Target
Definition at line 360 of file MachineFunction.cpp.
References llvm::Annotable::addAnnotation(), llvm::Annotable::getAnnotation(), MachineFunction(), and MF_AID().
Referenced by llvm::SelectionDAGISel::runOnFunction().
| void MachineFunction::destruct | ( | const Function * | F | ) | [static] |
destruct - Destroy the MachineFunction corresponding to a given Function
Definition at line 369 of file MachineFunction.cpp.
References llvm::Annotable::deleteAnnotation(), and MF_AID().
| MachineFunction & MachineFunction::get | ( | const Function * | F | ) | [static] |
get - Return a handle to a MachineFunction corresponding to the given Function. This should not be called before "construct()" for a given Function.
Definition at line 375 of file MachineFunction.cpp.
References llvm::Annotable::getAnnotation(), and MF_AID().
Referenced by llvm::MachineFunctionPass::runOnFunction().
| iterator llvm::MachineFunction::begin | ( | ) | [inline] |
Definition at line 232 of file MachineFunction.h.
Referenced by llvm::LiveIntervals::computeNumbering(), llvm::X86RegisterInfo::emitPrologue(), llvm::TargetInstrInfoImpl::GetFunctionSizeInBytes(), llvm::GraphTraits< const MachineFunction * >::nodes_begin(), llvm::GraphTraits< MachineFunction * >::nodes_begin(), print(), llvm::LiveIntervals::print(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), RemoveVRSaveCode(), RenumberBlocks(), llvm::SelectionDAGISel::runOnFunction(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), llvm::X86ATTAsmPrinter::runOnMachineFunction(), llvm::SimpleRegisterCoalescing::runOnMachineFunction(), llvm::DebugLabelFolder::runOnMachineFunction(), and llvm::LiveVariables::runOnMachineFunction().
| const_iterator llvm::MachineFunction::begin | ( | ) | const [inline] |
Definition at line 233 of file MachineFunction.h.
| iterator llvm::MachineFunction::end | ( | ) | [inline] |
Definition at line 234 of file MachineFunction.h.
Referenced by BBHasFallthrough(), canFallThroughTo(), llvm::LiveIntervals::computeNumbering(), llvm::X86RegisterInfo::emitPrologue(), FixTail(), llvm::TargetInstrInfoImpl::GetFunctionSizeInBytes(), getNextBlock(), llvm::GraphTraits< const MachineFunction * >::nodes_end(), llvm::GraphTraits< MachineFunction * >::nodes_end(), print(), llvm::LiveIntervals::print(), llvm::ARMRegisterInfo::processFunctionBeforeCalleeSavedScan(), RemoveVRSaveCode(), RenumberBlocks(), llvm::X86IntelAsmPrinter::runOnMachineFunction(), llvm::X86ATTAsmPrinter::runOnMachineFunction(), llvm::SimpleRegisterCoalescing::runOnMachineFunction(), llvm::DebugLabelFolder::runOnMachineFunction(), llvm::LiveVariables::runOnMachineFunction(), llvm::SelectionDAGLowering::visitBitTestCase(), llvm::SelectionDAGLowering::visitBitTestHeader(), llvm::SelectionDAGLowering::visitJumpTableHeader(), and llvm::SelectionDAGLowering::visitSwitchCase().
| const_iterator llvm::MachineFunction::end | ( | ) | const [inline] |
Definition at line 235 of file MachineFunction.h.
| reverse_iterator llvm::MachineFunction::rbegin | ( | ) | [inline] |
Definition at line 237 of file MachineFunction.h.
| const_reverse_iterator llvm::MachineFunction::rbegin | ( | ) | const [inline] |
Definition at line 238 of file MachineFunction.h.
| reverse_iterator llvm::MachineFunction::rend | ( | ) | [inline] |
Definition at line 239 of file MachineFunction.h.
| const_reverse_iterator llvm::MachineFunction::rend | ( | ) | const [inline] |
Definition at line 240 of file MachineFunction.h.
| unsigned llvm::MachineFunction::size | ( | ) | const [inline] |
Definition at line 242 of file MachineFunction.h.
| bool llvm::MachineFunction::empty | ( | ) | const [inline] |
| const MachineBasicBlock& llvm::MachineFunction::front | ( | ) | const [inline] |
Definition at line 244 of file MachineFunction.h.
Referenced by llvm::XCoreRegisterInfo::emitPrologue(), llvm::X86RegisterInfo::emitPrologue(), llvm::SPURegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::MipsRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), llvm::GraphTraits< Inverse< const MachineFunction * > >::getEntryNode(), llvm::GraphTraits< Inverse< MachineFunction * > >::getEntryNode(), llvm::GraphTraits< const MachineFunction * >::getEntryNode(), llvm::GraphTraits< MachineFunction * >::getEntryNode(), llvm::X86InstrInfo::getGlobalBaseReg(), and llvm::IA64TargetLowering::LowerArguments().
| MachineBasicBlock& llvm::MachineFunction::front | ( | ) | [inline] |
Definition at line 245 of file MachineFunction.h.
| const MachineBasicBlock& llvm::MachineFunction::back | ( | ) | const [inline] |
Definition at line 246 of file MachineFunction.h.
| MachineBasicBlock& llvm::MachineFunction::back | ( | ) | [inline] |
Definition at line 247 of file MachineFunction.h.
| void llvm::MachineFunction::push_back | ( | MachineBasicBlock * | MBB | ) | [inline] |
Definition at line 249 of file MachineFunction.h.
Referenced by llvm::FunctionLoweringInfo::set(), and llvm::SplitCriticalMachineEdge().
| void llvm::MachineFunction::push_front | ( | MachineBasicBlock * | MBB | ) | [inline] |
Definition at line 250 of file MachineFunction.h.
| void llvm::MachineFunction::insert | ( | iterator | MBBI, | |
| MachineBasicBlock * | MBB | |||
| ) | [inline] |
Definition at line 251 of file MachineFunction.h.
Referenced by llvm::PPCTargetLowering::EmitAtomicBinary(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::SparcTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::PIC16TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::AlphaTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), and llvm::SelectionDAGLowering::FindMergedConditions().
Definition at line 254 of file MachineFunction.h.
Referenced by llvm::MachineBasicBlock::moveAfter(), and llvm::MachineBasicBlock::moveBefore().
| void llvm::MachineFunction::remove | ( | iterator | MBBI | ) | [inline] |
Definition at line 258 of file MachineFunction.h.
References MBBI.
Referenced by llvm::MachineBasicBlock::removeFromParent().
| void llvm::MachineFunction::erase | ( | iterator | MBBI | ) | [inline] |
Definition at line 261 of file MachineFunction.h.
Referenced by llvm::MachineBasicBlock::eraseFromParent().
| unsigned llvm::MachineFunction::addToMBBNumbering | ( | MachineBasicBlock * | MBB | ) | [inline] |
getNextMBBNumber - Returns the next unique number to be assigned to a MachineBasicBlock in this MachineFunction.
Definition at line 272 of file MachineFunction.h.
| void llvm::MachineFunction::removeFromMBBNumbering | ( | unsigned | N | ) | [inline] |
removeFromMBBNumbering - Remove the specific machine basic block from our tracker, this is only really to be used by the MachineBasicBlock implementation.
Definition at line 280 of file MachineFunction.h.
| MachineInstr * MachineFunction::CreateMachineInstr | ( | const TargetInstrDesc & | TID, | |
| DebugLoc | DL, | |||
| bool | NoImp = false | |||
| ) |
CreateMachineInstr - Allocate a new MachineInstr. Use this instead of `new MachineInstr'.
CreateMachineInstr - Allocate a new MachineInstr. Use this instead of `new MachineInstr'.
Definition at line 195 of file MachineFunction.cpp.
Referenced by llvm::BuildMI(), FuseInst(), FuseTwoAddrInst(), llvm::ARMInstrInfo::restoreCalleeSavedRegisters(), and llvm::X86InstrInfo::unfoldMemoryOperand().
| MachineInstr * MachineFunction::CloneMachineInstr | ( | const MachineInstr * | Orig | ) |
CloneMachineInstr - Create a new MachineInstr which is a copy of the 'Orig' instruction, identical in all ways except the the instruction has no parent, prev, or next.
CloneMachineInstr - Create a new MachineInstr which is a copy of the 'Orig' instruction, identical in all ways except the the instruction has no parent, prev, or next.
Definition at line 206 of file MachineFunction.cpp.
Referenced by llvm::LiveIntervals::addIntervalsForSpills(), llvm::X86InstrInfo::commuteInstruction(), llvm::X86InstrInfo::reMaterialize(), llvm::TargetInstrInfoImpl::reMaterialize(), and llvm::ARMInstrInfo::reMaterialize().
| void MachineFunction::DeleteMachineInstr | ( | MachineInstr * | MI | ) |
DeleteMachineInstr - Delete the given MachineInstr.
Definition at line 214 of file MachineFunction.cpp.
References llvm::MachineInstr::clearMemOperands(), and llvm::MachineInstr::~MachineInstr().
Referenced by llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::SparcTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::PIC16TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::AlphaTargetLowering::EmitInstrWithCustomInserter(), and llvm::LiveIntervals::releaseMemory().
| MachineBasicBlock * MachineFunction::CreateMachineBasicBlock | ( | const BasicBlock * | bb = 0 |
) |
CreateMachineBasicBlock - Allocate a new MachineBasicBlock. Use this instead of `new MachineBasicBlock'.
CreateMachineBasicBlock - Allocate a new MachineBasicBlock. Use this instead of `new MachineBasicBlock'.
Definition at line 228 of file MachineFunction.cpp.
Referenced by llvm::PPCTargetLowering::EmitAtomicBinary(), llvm::XCoreTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::SparcTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::PIC16TargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::AlphaTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), llvm::SelectionDAGLowering::FindMergedConditions(), llvm::FunctionLoweringInfo::set(), and llvm::SplitCriticalMachineEdge().
| void MachineFunction::DeleteMachineBasicBlock | ( | MachineBasicBlock * | MBB | ) |
DeleteMachineBasicBlock - Delete the given MachineBasicBlock.
Definition at line 236 of file MachineFunction.cpp.
References llvm::MachineBasicBlock::getParent(), and llvm::MachineBasicBlock::~MachineBasicBlock().
getOrCreateDebugLocID - Look up the DebugLocTuple index with the given source file, line, and column. If none currently exists, create add a new new DebugLocTuple and insert it into the DebugIdMap.
getOrCreateDebugLocID - Look up the DebugLocTuple index with the given source file, line, and column. If none currently exists, create add a new new DebugLocTuple and insert it into the DebugIdMap.
Definition at line 385 of file MachineFunction.cpp.
References llvm::DebugLocTracker::DebugIdMap, llvm::DebugLocTracker::DebugLocations, and II.
Referenced by llvm::FunctionLoweringInfo::set().