Lines Matching refs:RI

177   CHRScope(RegInfo RI) : BranchInsertPoint(nullptr) {  in CHRScope()  argument
178 assert(RI.R && "Null RegionIn"); in CHRScope()
179 RegInfos.push_back(RI); in CHRScope()
223 for (RegInfo &RI : Next->RegInfos) in append()
224 RegInfos.push_back(RI); in append()
232 for (RegInfo &RI : RegInfos) in addSub()
233 if (RI.R == SubIn->getParentRegion()) { in addSub()
249 [&Boundary](const RegInfo& RI) { in split() argument
250 return Boundary == RI.R; in split()
259 for (RegInfo &RI : TailRegInfos) in split()
260 TailRegionSet.insert(RI.R); in split()
270 [&Parent](const RegInfo& RI) { in split() argument
271 return Parent == RI.R; in split()
283 for (const RegInfo &RI : RegInfos) in contains() local
284 if (RI.R->contains(Parent)) in contains()
326 : F(Fin), BFI(BFIin), DT(DTin), PSI(PSIin), RI(RIin), ORE(OREin) {} in CHR()
341 Region *R = RI.getTopLevelRegion(); in findScopes()
407 RegionInfo &RI; member in __anon5bb62add0211::CHR
474 for (const RegInfo &RI : RegInfos) { in print() local
475 OS << RI.R->getNameStr(); in print()
476 if (RI.HasBranch) in print()
478 if (RI.Selects.size() > 0) in print()
479 OS << " S" << RI.Selects.size(); in print()
694 static Instruction* getBranchInsertPoint(RegInfo &RI) { in getBranchInsertPoint() argument
695 Region *R = RI.R; in getBranchInsertPoint()
700 for (SelectInst *SI : RI.Selects) { in getBranchInsertPoint()
713 for (SelectInst *SI : RI.Selects) { in getBranchInsertPoint()
747 bool EntryInSubregion = RI.getRegionFor(Entry) != R; in findScope()
770 RegInfo RI(R); in findScope() local
771 RI.HasBranch = checkBiasedBranch( in findScope()
774 Result = new CHRScope(RI); in findScope()
778 if (!RI.HasBranch) { in findScope()
817 auto AddSelects = [&](RegInfo &RI) { in findScope() argument
819 if (checkBiasedSelect(SI, RI.R, in findScope()
823 RI.Selects.push_back(SI); in findScope()
832 RegInfo RI(R); in findScope() local
833 AddSelects(RI); in findScope()
834 Result = new CHRScope(RI); in findScope()
872 RegInfo &RI = Scope->RegInfos[0]; in checkScopeHoistable() local
873 Region *R = RI.R; in checkScopeHoistable()
875 auto *Branch = RI.HasBranch ? in checkScopeHoistable()
877 SmallVector<SelectInst *, 8> &Selects = RI.Selects; in checkScopeHoistable()
878 if (RI.HasBranch || !Selects.empty()) { in checkScopeHoistable()
879 Instruction *InsertPoint = getBranchInsertPoint(RI); in checkScopeHoistable()
913 InsertPoint = getBranchInsertPoint(RI); in checkScopeHoistable()
915 if (RI.HasBranch && InsertPoint != Branch) { in checkScopeHoistable()
945 if (RI.HasBranch) { in checkScopeHoistable()
960 if (RI.HasBranch) { in checkScopeHoistable()
1020 static DenseSet<Value *> getCHRConditionValuesForRegion(RegInfo &RI) { in getCHRConditionValuesForRegion() argument
1022 if (RI.HasBranch) { in getCHRConditionValuesForRegion()
1023 auto *BI = cast<BranchInst>(RI.R->getEntry()->getTerminator()); in getCHRConditionValuesForRegion()
1026 for (SelectInst *SI : RI.Selects) { in getCHRConditionValuesForRegion()
1102 for (RegInfo &RI : Scope->RegInfos) in getSelectsInScope()
1103 for (SelectInst *SI : RI.Selects) in getSelectsInScope()
1144 for (RegInfo &RI : RegInfos) { in splitScope()
1145 Instruction *InsertPoint = getBranchInsertPoint(RI); in splitScope()
1146 DenseSet<Value *> ConditionValues = getCHRConditionValuesForRegion(RI); in splitScope()
1153 if (RI.R == RegInfos[0].R) { in splitScope()
1158 << RI.R->getNameStr() << "\n"); in splitScope()
1166 RI.R->getEntry()->getTerminator()) in splitScope()
1186 << RI.R->getNameStr() << "\n"); in splitScope()
1189 CHRScope *Tail = Scope->split(RI.R); in splitScope()
1202 RI.R->getEntry()->getTerminator()) in splitScope()
1285 for (RegInfo &RI : Scope->RegInfos) { in classifyBiasedScopes()
1286 if (RI.HasBranch) { in classifyBiasedScopes()
1287 Region *R = RI.R; in classifyBiasedScopes()
1295 for (SelectInst *SI : RI.Selects) { in classifyBiasedScopes()
1359 for (RegInfo &RI : Scope->CHRRegions) { in setCHRRegions()
1360 dbgs() << RI.R->getNameStr() << "\n"; in setCHRRegions()
1370 for (RegInfo &RI : Scope->RegInfos) { in setCHRRegions()
1371 for (SelectInst *SI : RI.Selects) { in setCHRRegions()
1376 for (RegInfo &RI : Scope->RegInfos) { in setCHRRegions()
1377 Region *R = RI.R; in setCHRRegions()
1380 if (RI.HasBranch) { in setCHRRegions()
1392 for (SelectInst *SI : RI.Selects) { in setCHRRegions()
1404 OutermostScope->CHRRegions.push_back(RI); in setCHRRegions()
1462 for (const RegInfo &RI : Scope->CHRRegions) { in hoistScopeConditions() local
1463 Region *R = RI.R; in hoistScopeConditions()
1466 if (RI.HasBranch && (IsTrueBiased || IsFalseBiased)) { in hoistScopeConditions()
1471 for (SelectInst *SI : RI.Selects) { in hoistScopeConditions()
1541 for (RegInfo &RI : Scope->RegInfos) { in insertTrivialPHIs()
1542 for (BasicBlock *BB : RI.R->blocks()) { // This includes the blocks in the in insertTrivialPHIs()
1605 auto HasBiasedBranchOrSelect = [](RegInfo &RI, CHRScope *Scope) { in assertCHRRegionsHaveBiasedBranchOrSelect() argument
1606 if (Scope->TrueBiasedRegions.count(RI.R) || in assertCHRRegionsHaveBiasedBranchOrSelect()
1607 Scope->FalseBiasedRegions.count(RI.R)) in assertCHRRegionsHaveBiasedBranchOrSelect()
1609 for (SelectInst *SI : RI.Selects) in assertCHRRegionsHaveBiasedBranchOrSelect()
1615 for (RegInfo &RI : Scope->CHRRegions) { in assertCHRRegionsHaveBiasedBranchOrSelect()
1616 assert(HasBiasedBranchOrSelect(RI, Scope) && in assertCHRRegionsHaveBiasedBranchOrSelect()
1627 for (RegInfo &RI : Scope->CHRRegions) { in assertBranchOrSelectConditionHoisted()
1628 Region *R = RI.R; in assertBranchOrSelectConditionHoisted()
1631 if (RI.HasBranch && (IsTrueBiased || IsFalseBiased)) { in assertBranchOrSelectConditionHoisted()
1642 for (SelectInst *SI : RI.Selects) { in assertBranchOrSelectConditionHoisted()
1737 for (RegInfo &RI : Scope->RegInfos) in cloneScopeBlocks()
1738 for (BasicBlock *BB : RI.R->blocks()) { // This includes the blocks in the in cloneScopeBlocks()
1813 for (RegInfo &RI : Scope->CHRRegions) { in fixupBranchesAndSelects()
1814 Region *R = RI.R; in fixupBranchesAndSelects()
1815 if (RI.HasBranch) { in fixupBranchesAndSelects()
1819 for (SelectInst *SI : RI.Selects) { in fixupBranchesAndSelects()
1971 RI.print(dbgs())); in run()
2013 RI.print(dbgs())); in run()
2044 RegionInfo &RI = getAnalysis<RegionInfoPass>().getRegionInfo(); in runOnFunction() local
2047 return CHR(F, BFI, DT, PSI, RI, *OwnedORE.get()).run(); in runOnFunction()
2064 auto &RI = FAM.getResult<RegionInfoAnalysis>(F); in run() local
2066 bool Changed = CHR(F, BFI, DT, PSI, RI, ORE).run(); in run()