LLVM API Documentation

Namespaces | Functions
LoopInfoImpl.h File Reference
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Analysis/LoopInfo.h"
Include dependency graph for LoopInfoImpl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Functions

template<class BlockT , class LoopT >
static void llvm::discoverAndMapSubloop (LoopT *L, ArrayRef< BlockT * > Backedges, LoopInfoBase< BlockT, LoopT > *LI, DominatorTreeBase< BlockT > &DomTree)

Variable Documentation

std::vector<std::pair<BlockT*, SuccIterTy> > DFSStack

Definition at line 433 of file LoopInfoImpl.h.

LoopInfoBase<BlockT, LoopT>* LI

Definition at line 431 of file LoopInfoImpl.h.

Referenced by llvm::AliasSetTracker::add(), AddressIsTaken(), llvm::RegPressureTracker::advance(), AllGlobalLoadUsesSimpleEnoughForHeapSRA(), AllUsesOfLoadedValueWillTrapIfNull(), analyzeFrameIndexes(), AnalyzeGlobal(), llvm::RegPressureTracker::bumpDownwardPressure(), CleanupConstantGlobalUsers(), llvm::ConstantFoldInstruction(), llvm::ConvertDebugDeclareToDebugValue(), llvm::IRBuilder< true, TargetFolder >::CreateAlignedLoad(), llvm::LiveRangeEdit::createFrom(), llvm::DependenceAnalysis::depends(), llvm::ConnectedVNInfoEqClasses::Distribute(), llvm::GCOVBlock::dump(), llvm::StringMatcher::Emit(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::PPCTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::EmitPartwordAtomicBinary(), llvm::FindAvailableLoadedValue(), llvm::PPCInstrInfo::FoldImmediate(), llvm::MachineLoopInfo::getBase(), llvm::LoopInfo::getBase(), GetHeapSROAValue(), llvm::R600InstrInfo::getIndirectIndexBegin(), llvm::LiveIntervals::getInterval(), GetLocation(), llvm::MemoryDependenceAnalysis::getPointerDependencyFrom(), llvm::BoUpSLP::getPointerOperand(), getPointerOperand(), llvm::LiveIntervals::getRegUnit(), llvm::DependenceAnalysis::getSplitIteration(), llvm::Record::getValueAsListInit(), llvm::isAllocaPromotable(), isAtomic(), llvm::Instruction::isIdenticalToWhenDefined(), isInteresting(), isInterestingMemoryAccess(), isLoadOrStore(), llvm::objcarc::IsObjCIdentifiedObject(), isOnlyCopiedFromConstantGlobal(), isPlainlyKilled(), llvm::objcarc::IsPotentialRetainableObjPtr(), isSafePHIToSpeculate(), isSafeSelectToSpeculate(), llvm::isSafeToLoadUnconditionally(), llvm::isSafeToSpeculativelyExecute(), llvm::Instruction::isSameOperationAs(), LLVMGetVolatile(), LLVMSetVolatile(), llvm::LoadAndStorePromoter::LoadAndStorePromoter(), llvm::LowerDbgDeclare(), llvm::MergeBlockIntoPredecessor(), OptimizeAwayTrappingUsesOfLoads(), OptimizeAwayTrappingUsesOfValue(), OptimizeGlobalAddressOfMalloc(), passingValueIsAlwaysUndefined(), PerformHeapAllocSRoA(), llvm::LiveIntervals::print(), llvm::AssemblyWriter::printInstruction(), llvm::RegPressureTracker::recede(), llvm::AliasSetTracker::remove(), llvm::VarInit::resolveListElementReference(), llvm::FieldInit::resolveListElementReference(), llvm::DependenceAnalysis::runOnFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::MachineLoopInfo::runOnMachineFunction(), llvm::LiveVariables::runOnMachineFunction(), SimplifyICmpInst(), llvm::simplifyUsersOfIV(), SimplifyWithOpReplaced(), llvm::SplitBlock(), llvm::SplitCriticalEdge(), llvm::MachineBasicBlock::SplitCriticalEdge(), llvm::FastISel::tryToFoldLoad(), tryToMakeAllocaBePromotable(), TryToShrinkGlobalToBoolean(), UpdateAnalysisInformation(), llvm::InstCombiner::visitICmpInstWithInstAndIntCst(), llvm::InstCombiner::visitLandingPadInst(), llvm::InstCombiner::visitLoadInst(), and llvm::InstCombiner::visitStoreInst().

DenseSet<const BlockT *> VisitedBlocks

Definition at line 432 of file LoopInfoImpl.h.