llvm.org GIT mirror llvm / e8deca8
PostRA scheduler fix. Clear stale loop dependencies. Fixes <rdar://problem/10235725> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141357 91177308-0d34-0410-b5e6-96231b3b80d8 Andrew Trick 8 years ago
2 changed file(s) with 3 addition(s) and 1 deletion(s). Raw diff Collapse all Expand all
133133 }
134134
135135 void ScheduleDAGInstrs::StartBlock(MachineBasicBlock *BB) {
136 LoopRegs.Deps.clear();
136137 if (MachineLoop *ML = MLI.getLoopFor(BB))
137138 if (BB == ML->getLoopLatch()) {
138139 MachineBasicBlock *Header = ML->getHeader();
4747 /// VisitLoop - Clear out any previous state and analyze the given loop.
4848 ///
4949 void VisitLoop(const MachineLoop *Loop) {
50 Deps.clear();
50 assert(Deps.empty() && "stale loop dependencies");
51
5152 MachineBasicBlock *Header = Loop->getHeader();
5253 SmallSet LoopLiveIns;
5354 for (MachineBasicBlock::livein_iterator LI = Header->livein_begin(),