Lines Matching refs:LRegion

512   LinearizedRegion *LRegion = nullptr;  member in __anon98c1c4210211::RegionMRT
524 if (LRegion) { in ~RegionMRT()
525 delete LRegion; in ~RegionMRT()
536 LRegion = LinearizeRegion; in setLinearizedRegion()
539 LinearizedRegion *getLinearizedRegion() { return LRegion; } in getLinearizedRegion()
606 LinearizedRegion *LRegion = getLinearizedRegion(); in replaceLiveOutReg() local
607 LRegion->replaceLiveOut(Register, NewRegister); in replaceLiveOutReg()
1129 LinearizedRegion *LRegion);
1131 MachineInstr &PHI, LinearizedRegion *LRegion);
1134 LinearizedRegion *LRegion);
1173 LinearizedRegion *LRegion,
1197 LinearizedRegion *LRegion);
1200 MachineBasicBlock *EntrySucc, LinearizedRegion *LRegion);
1202 LinearizedRegion *LRegion);
1204 MachineBasicBlock *splitExit(LinearizedRegion *LRegion);
1206 MachineBasicBlock *splitEntry(LinearizedRegion *LRegion);
1295 LinearizedRegion *LRegion = Region->getLinearizedRegion(); in fixRegionTerminator() local
1296 auto Exit = LRegion->getExit(); in fixRegionTerminator()
1303 if (LRegion->contains(Succ)) { in fixRegionTerminator()
1603 unsigned CombinedSourceReg, LinearizedRegion *LRegion) { in replaceLiveOutRegs() argument
1607 if (LRegion->isLiveOut(Reg)) { in replaceLiveOutRegs()
1622 LRegion->removeLiveOut(Reg); in replaceLiveOutRegs()
1629 LRegion->addLiveOut(CombinedSourceReg); in replaceLiveOutRegs()
1635 LinearizedRegion *LRegion) { in rewriteRegionExitPHI() argument
1642 replaceLiveOutRegs(PHI, PHIRegionIndices, LinearizedSourceReg, LRegion); in rewriteRegionExitPHI()
1666 LinearizedRegion *LRegion) { in rewriteRegionExitPHIs() argument
1675 rewriteRegionExitPHI(Region, LastMerge, *PHII, LRegion); in rewriteRegionExitPHIs()
2029 LinearizedRegion *LRegion) { in rewriteLiveOutRegs() argument
2040 (!IsSingleBB && (getDefInstr(LI)->getParent() == LRegion->getExit()))) { in rewriteLiveOutRegs()
2432 LinearizedRegion *LRegion) { in splitLoopPHI() argument
2434 getPHIRegionIndices(LRegion, PHI, PHIRegionIndices); in splitLoopPHI()
2451 LRegion->replaceRegisterInsideRegion(PHIDest, NewDestReg, false, MRI); in splitLoopPHI()
2469 LinearizedRegion *LRegion) { in splitLoopPHIs() argument
2474 splitLoopPHI(*PHII, Entry, EntrySucc, LRegion); in splitLoopPHIs()
2480 AMDGPUMachineCFGStructurizer::splitExit(LinearizedRegion *LRegion) { in splitExit() argument
2481 auto MRTRegion = LRegion->getRegionMRT(); in splitExit()
2482 auto Exit = LRegion->getExit(); in splitExit()
2494 LRegion->addMBB(NewExit); in splitExit()
2495 LRegion->setExit(NewExit); in splitExit()
2541 AMDGPUMachineCFGStructurizer::splitEntry(LinearizedRegion *LRegion) { in splitEntry() argument
2542 MachineBasicBlock *Entry = LRegion->getEntry(); in splitEntry()
2544 MachineBasicBlock *Exit = LRegion->getExit(); in splitEntry()
2549 LRegion->addMBB(EntrySucc); in splitEntry()
2563 splitLoopPHIs(Entry, EntrySucc, LRegion); in splitEntry()
2570 LinearizedRegion *LRegion = Region->getLinearizedRegion(); in initLinearizedRegion() local
2571 LRegion->initLiveOut(Region, MRI, TRI, PHIInfo); in initLinearizedRegion()
2572 LRegion->setEntry(Region->getEntry()); in initLinearizedRegion()
2573 return LRegion; in initLinearizedRegion()
2629 auto *LRegion = initLinearizedRegion(Region); in structurizeComplexRegion() local
2630 LRegion->setHasLoop(containsNewBackedge(Region)); in structurizeComplexRegion()
2633 LRegion->addMBB(LastMerge); in structurizeComplexRegion()
2634 LRegion->setExit(LastMerge); in structurizeComplexRegion()
2636 rewriteRegionExitPHIs(Region, LastMerge, LRegion); in structurizeComplexRegion()
2643 if (LRegion->getHasLoop()) { in structurizeComplexRegion()
2653 LLVM_DEBUG(LRegion->print(dbgs(), TRI)); in structurizeComplexRegion()
2693 CurrentMerge = createIfRegion(CurrentMerge, InnerLRegion, LRegion, in structurizeComplexRegion()
2719 CurrentMerge = createIfRegion(CurrentMerge, MBB, LRegion, BBSelectRegIn, in structurizeComplexRegion()
2729 LRegion->removeFalseRegisterKills(MRI); in structurizeComplexRegion()
2731 if (LRegion->getHasLoop()) { in structurizeComplexRegion()
2732 MachineBasicBlock *NewSucc = splitEntry(LRegion); in structurizeComplexRegion()
2733 if (isFunctionEntryBlock(LRegion->getEntry())) { in structurizeComplexRegion()
2734 resolvePHIInfos(LRegion->getEntry()); in structurizeComplexRegion()
2737 unsigned InReg = LRegion->getBBSelectRegIn(); in structurizeComplexRegion()
2741 TII->materializeImmediate(*(LRegion->getEntry()), in structurizeComplexRegion()
2742 LRegion->getEntry()->getFirstTerminator(), DL, in structurizeComplexRegion()
2745 LRegion->replaceRegisterInsideRegion(InReg, InnerSelectReg, false, MRI); in structurizeComplexRegion()
2747 insertMergePHI(LRegion->getEntry(), LRegion->getExit(), NewSucc, in structurizeComplexRegion()
2749 LRegion->getRegionMRT()->getInnerOutputRegister()); in structurizeComplexRegion()
2750 splitExit(LRegion); in structurizeComplexRegion()
2759 LLVM_DEBUG(LRegion->print(dbgs(), TRI)); in structurizeComplexRegion()
2764 Region->setLinearizedRegion(LRegion); in structurizeComplexRegion()
2815 LinearizedRegion *LRegion = new LinearizedRegion(); in createLinearizedRegion() local
2817 LRegion->addLiveOut(SelectOut); in createLinearizedRegion()
2821 LRegion->setRegionMRT(Region); in createLinearizedRegion()
2822 Region->setLinearizedRegion(LRegion); in createLinearizedRegion()
2823 LRegion->setParent(Region->getParent() in createLinearizedRegion()