Lines Matching defs:SG

376     for (auto &SG : SyncPipeline) {
377 SmallVector<SUnit *, 32> TempCollection = SG.Collection;
378 SG.Collection.clear();
383 SG.Collection.push_back(*SchedBarr);
433 for (auto &SG : SyncPipeline) {
434 LLVM_DEBUG(dbgs() << "SchedGroup with SGID " << SG.getSGID()
437 for (auto &SU : SG.Collection) {
445 SG.link(*SGBarr, false);
573 SchedGroup *Match = llvm::find_if(SyncPipeline, [CandSGID](SchedGroup &SG) {
574 return SG.getSGID() == CandSGID;
626 // If we are trying SGs in least cost order, and the current SG is cost
637 for (auto &SG : SyncPipeline) {
638 if (SG.getSGID() == CandSGID)
639 Match = &SG;
718 SchedGroup *Match = llvm::find_if(SyncPipeline, [CandSGID](SchedGroup &SG) {
719 return SG.getSGID() == CandSGID;
877 SchedGroup *SG = nullptr;
879 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
881 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
883 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
885 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1557 SchedGroup *SG = nullptr;
1602 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1605 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1606 PositionInChain, MFMAChainSeeds[MFMAChain], TII, SG->getSGID(),
1609 SG->addRule(
1610 std::make_shared<EnablesNthMFMA>(1, TII, SG->getSGID(), true));
1611 SG->addRule(std::make_shared<IsFMA>(TII, SG->getSGID()));
1612 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1615 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1618 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1620 MFMAChainSeeds[getNextTransMFMAChain()], TII, SG->getSGID(), true));
1622 SG->addRule(std::make_shared<EnablesNthMFMA>(MFMAEnablement + 1, TII,
1623 SG->getSGID(), true));
1624 SG->addRule(std::make_shared<IsFMA>(TII, SG->getSGID()));
1625 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1629 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1631 SG->addRule(std::make_shared<OccursAtOrAfterNode>(*FirstPipeDSR, TII,
1632 SG->getSGID()));
1633 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1637 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1640 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1641 PositionInChain, MFMAChainSeeds[MFMAChain], TII, SG->getSGID(), true));
1643 SG->addRule(std::make_shared<EnablesNthMFMA>(1, TII, SG->getSGID(), true));
1644 SG->addRule(std::make_shared<IsPipeExp>(TII, SG->getSGID(), true));
1645 SG->addRule(std::make_shared<LessThanNSuccs>(8, TII, SG->getSGID(),
1647 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1655 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1657 SG->addRule(std::make_shared<IsCvt>(TII, SG->getSGID()));
1659 SG->addRule(std::make_shared<IsReachableFromPrevNthGroup>(
1660 1 + (2 + UsesFMA) * I, TII, SG->getSGID()));
1662 SG->addRule(std::make_shared<IsSuccOfPrevNthGroup>(
1663 1 + (2 + UsesFMA) * I, TII, SG->getSGID()));
1664 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1669 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1672 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1674 MFMAChainSeeds[getNextTransMFMAChain()], TII, SG->getSGID(), true));
1676 SG->addRule(std::make_shared<EnablesNthMFMA>(2 * MFMAEnablement + 1,
1677 TII, SG->getSGID(), true));
1678 SG->addRule(std::make_shared<IsFMA>(TII, SG->getSGID()));
1679 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1683 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1686 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1687 PositionInChain, MFMAChainSeeds[MFMAChain], TII, SG->getSGID(),
1690 SG->addRule(std::make_shared<EnablesNthMFMA>(MFMAEnablement + 1, TII,
1691 SG->getSGID(), true));
1692 SG->addRule(std::make_shared<IsPipeExp>(TII, SG->getSGID(), true));
1693 SG->addRule(std::make_shared<LessThanNSuccs>(8, TII, SG->getSGID(),
1695 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1700 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1702 SG->addRule(std::make_shared<IsPipeExp>(TII, SG->getSGID(), true));
1703 SG->addRule(std::make_shared<GreaterThanOrEqualToNSuccs>(
1704 8, TII, SG->getSGID(), HasChainBetweenCvt));
1705 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1734 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1737 SG->addRule(std::make_shared<IsExactMFMA>(
1739 SG->getSGID(), true));
1741 SG->addRule(std::make_shared<OccursAfterExp>(TII, SG->getSGID(), true));
1742 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1746 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1748 SG->addRule(std::make_shared<IsPipeAdd>(TII, SG->getSGID()));
1749 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1753 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1755 SG->addRule(std::make_shared<OccursAtOrAfterNode>(*FirstPipeDSR, TII,
1756 SG->getSGID()));
1757 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1768 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1770 SG->addRule(std::make_shared<IsCvt>(TII, SG->getSGID()));
1780 SG->addRule(std::make_shared<IsReachableFromPrevNthGroup>(
1781 CurrentOffset, TII, SG->getSGID()));
1783 SG->addRule(std::make_shared<IsSuccOfPrevNthGroup>(CurrentOffset, TII,
1784 SG->getSGID()));
1785 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1790 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1793 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1795 MFMAChainSeeds[getNextTransMFMAChain()], TII, SG->getSGID(),
1798 SG->addRule(std::make_shared<EnablesNthMFMA>(
1800 TII, SG->getSGID(), true));
1801 SG->addRule(std::make_shared<IsFMA>(TII, SG->getSGID()));
1802 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1806 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1809 SG->addRule(std::make_shared<EnablesNthMFMAInChain>(
1810 PositionInChain, MFMAChainSeeds[MFMAChain], TII, SG->getSGID(),
1813 SG->addRule(std::make_shared<EnablesNthMFMA>(
1815 TII, SG->getSGID(), true));
1816 SG->addRule(std::make_shared<IsPipeExp>(TII, SG->getSGID(), true));
1817 SG->addRule(std::make_shared<LessThanNSuccs>(8, TII, SG->getSGID(),
1819 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1824 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1826 SG->addRule(std::make_shared<OccursAfterExp>(TII, SG->getSGID(), true));
1827 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1861 SchedGroup *SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1863 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
1865 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
1867 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2172 SchedGroup *SG;
2177 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2179 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2181 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2183 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2193 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2195 SG->addRule(std::make_shared<EnablesInitialMFMA>(TII, SG->getSGID(), true));
2196 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2198 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2200 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2204 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2206 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2208 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2210 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2217 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2219 SG->addRule(std::make_shared<IsPermForDSW>(TII, SG->getSGID(), true));
2220 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2222 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2224 SG->addRule(std::make_shared<IsSuccOfPrevGroup>(TII, SG->getSGID()));
2225 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2227 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2229 SG->addRule(std::make_shared<SharesPredWithPrevNthGroup>(
2230 1, TII, SG->getSGID(), true));
2231 SG->addRule(std::make_shared<VMEMSize>(TII, SG->getSGID()));
2232 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2234 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2236 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2238 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2240 SG->addRule(std::make_shared<SharesPredWithPrevNthGroup>(
2241 3, TII, SG->getSGID(), true));
2242 SG->addRule(std::make_shared<VMEMSize>(TII, SG->getSGID()));
2243 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2245 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2247 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2254 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2256 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2258 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2260 SG->addRule(std::make_shared<VMEMSize>(TII, SG->getSGID()));
2261 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2263 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2265 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2274 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2276 SG->addRule(std::make_shared<IsPermForDSW>(TII, SG->getSGID(), true));
2277 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2279 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2281 SG->addRule(std::make_shared<IsSuccOfPrevGroup>(TII, SG->getSGID()));
2282 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2284 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2286 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2288 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2290 SG->addRule(std::make_shared<IsPermForDSW>(TII, SG->getSGID(), true));
2291 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2293 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2295 SG->addRule(std::make_shared<IsSuccOfPrevGroup>(TII, SG->getSGID()));
2296 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2298 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2300 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2302 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2304 SG->addRule(std::make_shared<SharesPredWithPrevNthGroup>(
2305 2, TII, SG->getSGID(), true));
2306 SG->addRule(std::make_shared<VMEMSize>(TII, SG->getSGID()));
2307 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2309 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2311 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2313 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2315 SG->addRule(std::make_shared<SharesPredWithPrevNthGroup>(
2316 4, TII, SG->getSGID(), true));
2317 SG->addRule(std::make_shared<VMEMSize>(TII, SG->getSGID()));
2318 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2320 SG = &SyncedSchedGroups[PipelineSyncID].emplace_back(
2322 SG->initSchedGroup(SyncedInstrs[SG->getSyncID()]);
2621 SchedGroup SG(InvertedMask, std::nullopt, DAG, TII);
2622 SG.initSchedGroup();
2625 SG.link(
2680 auto &SG = SyncedSchedGroups[SyncID].emplace_back((SchedGroupMask)SGMask,
2683 SG.initSchedGroup(RIter, SyncedInstrs[SG.getSyncID()]);