30 "Machine Natural Loop Construction",
true,
true)
39 LI.Analyze(getAnalysis<MachineDominatorTree>().getBase());
52 if (TopMBB != Begin) {
56 if (TopMBB == Begin)
break;
66 if (BotMBB !=
prior(End)) {
77 #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
const MachineFunction * getParent() const
BlockT * getHeader() const
machine Machine Natural Loop true
LoopInfoBase< BlockT, LoopT > * LI
void print(raw_ostream &OS, unsigned Depth=0) const
AnalysisUsage & addRequired()
#define INITIALIZE_PASS_DEPENDENCY(depName)
MachineBasicBlock * getTopBlock()
char & MachineLoopInfoID
MachineLoopInfo - This pass is a loop analysis pass.
MachineBasicBlock * getBottomBlock()
#define INITIALIZE_PASS_END(passName, arg, name, cfg, analysis)
ID
LLVM Calling Convention Representation.
COFF::MachineTypes Machine
INITIALIZE_PASS_BEGIN(MachineLoopInfo,"machine-loops","Machine Natural Loop Construction", true, true) INITIALIZE_PASS_END(MachineLoopInfo
ItTy next(ItTy it, Dist n)
bool contains(const LoopT *L) const
virtual void getAnalysisUsage(AnalysisUsage &AU) const
raw_ostream & dbgs()
dbgs - Return a circular-buffered debug stream.
virtual void getAnalysisUsage(AnalysisUsage &AU) const
machine Machine Natural Loop Construction
BasicBlockListType::iterator iterator
ItTy prior(ItTy it, Dist n)