Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:SA

173   OwningPtr<SplitAnalysis> SA;
759 ArrayRef<SplitAnalysis::BlockInfo> UseBlocks = SA->getUseBlocks();
792 if (Intf.last() >= SA->getLastSplitPoint(BC.Number))
846 if (Intf.last() >= SA->getLastSplitPoint(Number))
865 BitVector Todo = SA->getThroughBlocks();
922 if (!SA->getNumThroughBlocks())
959 /// SA around all use blocks instead of forming bundle regions.
962 ArrayRef<SplitAnalysis::BlockInfo> UseBlocks = SA->getUseBlocks();
983 ArrayRef<SplitAnalysis::BlockInfo> UseBlocks = SA->getUseBlocks();
1025 /// stack-bound bundles. The shared SA/SE SplitAnalysis and SplitEditor
1043 unsigned Reg = SA->getParent().reg;
1047 ArrayRef<SplitAnalysis::BlockInfo> UseBlocks = SA->getUseBlocks();
1075 if (SA->shouldSplitSingleBlock(BI, SingleInstrs))
1091 BitVector Todo = SA->getThroughBlocks();
1131 unsigned OrigBlocks = SA->getNumLiveBlocks();
1155 if (SA->countLiveBlocks(&Reg) >= OrigBlocks) {
1309 assert(&SA->getParent() == &VirtReg && "Live range wasn't analyzed");
1314 ArrayRef<SplitAnalysis::BlockInfo> UseBlocks = SA->getUseBlocks();
1317 if (SA->shouldSplitSingleBlock(BI, SingleInstrs))
1370 ArrayRef<SlotIndex> Uses = SA->getUseSlots();
1411 /// in order to use PhysReg between two entries in SA->UseSlots.
1417 assert(SA->getUseBlocks().size() == 1 && "Not a local interval");
1418 const SplitAnalysis::BlockInfo &BI = SA->getUseBlocks().front();
1419 ArrayRef<SlotIndex> Uses = SA->getUseSlots();
1432 if (!Matrix->query(const_cast<LiveInterval&>(SA->getParent()), *Units)
1495 assert(SA->getUseBlocks().size() == 1 && "Not a local interval");
1496 const SplitAnalysis::BlockInfo &BI = SA->getUseBlocks().front();
1505 ArrayRef<SlotIndex> Uses = SA->getUseSlots();
1727 SA->analyze(&VirtReg);
1736 SA->analyze(&VirtReg);
1742 if (SA->didRepairRange()) {
1843 SA.reset(new SplitAnalysis(*VRM, *LIS, *Loops));
1844 SE.reset(new SplitEditor(*SA, *LIS, *VRM, *DomTree, *MBFI));