Lines Matching refs:Preheader
141 BasicBlock *Preheader = L.getLoopPreheader(); in parseLoopStructure() local
142 if (!Preheader) { in parseLoopStructure()
394 const DataLayout &DL = Preheader->getModule()->getDataLayout(); in parseLoopStructure()
396 Instruction *Ins = Preheader->getTerminator(); in parseLoopStructure()
514 const LoopStructure &LS, BasicBlock *Preheader, Value *ExitSubloopAt, in changeIterationSpaceEnd() argument
595 BranchInst *PreheaderJump = cast<BranchInst>(Preheader->getTerminator()); in changeIterationSpaceEnd()
649 NewPHI->addIncoming(PN.getIncomingValueForBlock(Preheader), Preheader); in changeIterationSpaceEnd()
657 RRI.IndVarEnd->addIncoming(IndVarStart, Preheader); in changeIterationSpaceEnd()
681 BasicBlock *Preheader = BasicBlock::Create(Ctx, Tag, &F, LS.Header); in createPreheader() local
682 BranchInst::Create(LS.Header, Preheader); in createPreheader()
684 LS.Header->replacePhiUsesWith(OldPreheader, Preheader); in createPreheader()
686 return Preheader; in createPreheader()
721 BasicBlock *Preheader = OriginalLoop.getLoopPreheader(); in run() local
722 assert(Preheader != nullptr && "precondition!"); in run()
724 OriginalPreheader = Preheader; in run()
725 MainLoopPreheader = Preheader; in run()
811 Preheader->getTerminator()->replaceUsesOfWith(MainLoopStructure.Header, in run()
815 createPreheader(MainLoopStructure, Preheader, "mainloop"); in run()
816 PreLoopRRI = changeIterationSpaceEnd(PreLoop.Structure, Preheader, in run()
827 createPreheader(PostLoop.Structure, Preheader, "postloop"); in run()
835 MainLoopPreheader != Preheader ? MainLoopPreheader : nullptr; in run()