Lines Matching refs:KernelBB

113   MachineBasicBlock *KernelBB = MF.CreateMachineBasicBlock(BB->getBasicBlock());  in generatePipelinedLoop()  local
127 generateProlog(MaxStageCount, KernelBB, VRMap, PrologBBs); in generatePipelinedLoop()
128 MF.insert(BB->getIterator(), KernelBB); in generatePipelinedLoop()
138 KernelBB->push_back(NewMI); in generatePipelinedLoop()
149 KernelBB->push_back(NewMI); in generatePipelinedLoop()
153 NewKernel = KernelBB; in generatePipelinedLoop()
154 KernelBB->transferSuccessors(BB); in generatePipelinedLoop()
155 KernelBB->replaceSuccessor(BB, KernelBB); in generatePipelinedLoop()
157 generateExistingPhis(KernelBB, PrologBBs.back(), KernelBB, KernelBB, VRMap, in generatePipelinedLoop()
159 generatePhis(KernelBB, PrologBBs.back(), KernelBB, KernelBB, VRMap, InstrMap, in generatePipelinedLoop()
162 LLVM_DEBUG(dbgs() << "New block\n"; KernelBB->dump();); in generatePipelinedLoop()
166 generateEpilog(MaxStageCount, KernelBB, VRMap, EpilogBBs, PrologBBs); in generatePipelinedLoop()
170 splitLifetimes(KernelBB, EpilogBBs); in generatePipelinedLoop()
173 removeDeadInstructions(KernelBB, EpilogBBs); in generatePipelinedLoop()
176 addBranches(*Preheader, PrologBBs, KernelBB, EpilogBBs, VRMap); in generatePipelinedLoop()
191 MachineBasicBlock *KernelBB, in generateProlog() argument
234 PredBB->replaceSuccessor(BB, KernelBB); in generateProlog()
249 MachineBasicBlock *KernelBB, in generateEpilog() argument
257 bool checkBranch = TII->analyzeBranch(*KernelBB, TBB, FBB, Cond); in generateEpilog()
262 MachineBasicBlock::succ_iterator LoopExitI = KernelBB->succ_begin(); in generateEpilog()
263 if (*LoopExitI == KernelBB) in generateEpilog()
265 assert(LoopExitI != KernelBB->succ_end() && "Expecting a successor"); in generateEpilog()
268 MachineBasicBlock *PredBB = KernelBB; in generateEpilog()
304 generateExistingPhis(NewBB, PrologBBs[i - 1], PredBB, KernelBB, VRMap, in generateEpilog()
306 generatePhis(NewBB, PrologBBs[i - 1], PredBB, KernelBB, VRMap, InstrMap, in generateEpilog()
321 TII->removeBranch(*KernelBB); in generateEpilog()
322 TII->insertBranch(*KernelBB, KernelBB, EpilogStart, Cond, DebugLoc()); in generateEpilog()
366 MachineBasicBlock *KernelBB, ValueMapTy *VRMap, InstrMapTy &InstrMap, in generateExistingPhis() argument
473 if (InstOp1->isPHI() && InstOp1->getParent() == KernelBB) in generateExistingPhis()
474 PhiOp1 = getInitPhiReg(*InstOp1, KernelBB); in generateExistingPhis()
604 MachineBasicBlock *KernelBB, ValueMapTy *VRMap, InstrMapTy &InstrMap, in generatePhis() argument
655 if (InstOp1->isPHI() && InstOp1->getParent() == KernelBB) in generatePhis()
656 PhiOp1 = getInitPhiReg(*InstOp1, KernelBB); in generatePhis()
701 void ModuloScheduleExpander::removeDeadInstructions(MachineBasicBlock *KernelBB, in removeDeadInstructions() argument
762 for (MachineBasicBlock::iterator BBI = KernelBB->instr_begin(), in removeDeadInstructions()
763 BBE = KernelBB->getFirstNonPHI(); in removeDeadInstructions()
785 void ModuloScheduleExpander::splitLifetimes(MachineBasicBlock *KernelBB, in splitLifetimes() argument
788 for (auto &PHI : KernelBB->phis()) { in splitLifetimes()
795 if (I->isPHI() && I->getParent() == KernelBB) { in splitLifetimes()
797 unsigned LCDef = getLoopPhiReg(PHI, KernelBB); in splitLifetimes()
801 if (!MI || MI->getParent() != KernelBB || MI->isPHI()) in splitLifetimes()
807 KernelBB->instr_end())) in splitLifetimes()
812 BuildMI(*KernelBB, MI, MI->getDebugLoc(), in splitLifetimes()
850 MachineBasicBlock *KernelBB, in addBranches() argument
854 MachineBasicBlock *LastPro = KernelBB; in addBranches()
855 MachineBasicBlock *LastEpi = KernelBB; in addBranches()
885 if (LastPro == KernelBB) { in addBranches()