Lines Matching refs:BlockChain

212 class BlockChain;
215 using BlockToChainMapType = DenseMap<const MachineBasicBlock *, BlockChain *>;
228 class BlockChain { class
249 BlockChain(BlockToChainMapType &BlockToChain, MachineBasicBlock *BB) in BlockChain() function in __anon4b39d8210111::BlockChain
283 void merge(MachineBasicBlock *BB, BlockChain *Chain) { in merge()
401 SpecificBumpPtrAllocator<BlockChain> ChainAllocator;
409 DenseMap<const MachineBasicBlock *, BlockChain *> BlockToChain;
439 const BlockChain &Chain, const MachineBasicBlock *LoopHeaderBB,
445 const BlockChain &Chain, const MachineBasicBlock *BB,
451 const MachineBasicBlock *BB, const BlockChain &Chain,
462 BlockChain &Chain, BlockFilterSet *BlockFilter,
466 BlockChain &Chain, BlockFilterSet *BlockFilter,
471 const BlockChain &SuccChain, BranchProbability SuccProb,
472 BranchProbability RealSuccProb, const BlockChain &Chain,
475 const MachineBasicBlock *BB, const BlockChain &Chain,
478 const BlockChain &Chain, SmallVectorImpl<MachineBasicBlock *> &WorkList);
480 const BlockChain &PlacedChain,
490 SmallPtrSetImpl<BlockChain *> &UpdatedPreds,
493 void buildChain(const MachineBasicBlock *BB, BlockChain &Chain,
515 BlockChain &LoopChain, const MachineBasicBlock *ExitingBB,
518 BlockChain &LoopChain, const MachineLoop &L,
531 const BlockChain &Chain, const BlockFilterSet *BlockFilter);
536 const BlockChain &Chain, const BlockFilterSet *BlockFilter);
542 BranchProbability AdjustedSumProb, const BlockChain &Chain,
554 const BlockChain &Chain, const BlockFilterSet *BlockFilter);
623 const BlockChain &Chain, const MachineBasicBlock *LoopHeaderBB, in markChainSuccessors()
639 const BlockChain &Chain, const MachineBasicBlock *MBB, in markBlockSuccessors()
648 BlockChain &SuccChain = *BlockToChain[Succ]; in markBlockSuccessors()
672 const MachineBasicBlock *BB, const BlockChain &Chain, in collectViableSuccessors()
697 BlockChain *SuccChain = BlockToChain[Succ]; in collectViableSuccessors()
781 const BlockChain &Chain, const BlockFilterSet *BlockFilter) { in isProfitableToTailDup()
935 const BlockChain &Chain, const BlockFilterSet *BlockFilter) { in isTrellis()
957 const BlockChain *PredChain = BlockToChain[SuccPred]; in isTrellis()
1030 BranchProbability AdjustedSumProb, const BlockChain &Chain, in getBestTrellisSuccessor()
1114 const BlockChain &Chain, const BlockFilterSet *BlockFilter) { in canTailDuplicateUnplacedPreds()
1381 const BlockChain &SuccChain, BranchProbability SuccProb, in hasBetterLayoutPredecessor()
1382 BranchProbability RealSuccProb, const BlockChain &Chain, in hasBetterLayoutPredecessor()
1510 BlockChain *PredChain = BlockToChain[Pred]; in hasBetterLayoutPredecessor()
1561 const MachineBasicBlock *BB, const BlockChain &Chain, in selectBestSuccessor()
1581 BlockChain *SuccChain = BlockToChain[Succ]; in selectBestSuccessor()
1603 BlockChain &SuccChain = *BlockToChain[Succ]; in selectBestSuccessor()
1673 const BlockChain &Chain, SmallVectorImpl<MachineBasicBlock *> &WorkList) { in selectBestCandidateBlock()
1693 BlockChain &SuccChain = *BlockToChain[MBB]; in selectBestCandidateBlock()
1740 const BlockChain &PlacedChain, in getFirstUnplacedBlock()
1760 SmallPtrSetImpl<BlockChain *> &UpdatedPreds, in fillWorkLists()
1762 BlockChain &Chain = *BlockToChain[MBB]; in fillWorkLists()
1792 const MachineBasicBlock *HeadBB, BlockChain &Chain, in buildChain()
1846 BlockChain &SuccChain = *BlockToChain[BestSucc]; in buildChain()
1901 BlockChain *PredChain = BlockToChain[Pred]; in TopFallThroughFreq()
1910 BlockChain *SuccChain = BlockToChain[Succ]; in TopFallThroughFreq()
1971 BlockChain *PredChain = BlockToChain[Pred]; in FallThroughGains()
1991 BlockChain *SuccChain = BlockToChain[Succ]; in FallThroughGains()
2050 BlockChain &HeaderChain = *BlockToChain[OldTop]; in findBestLoopTopHelper()
2152 BlockChain &HeaderChain = *BlockToChain[L.getHeader()]; in findBestLoopExit()
2167 BlockChain &Chain = *BlockToChain[MBB]; in findBestLoopExit()
2185 BlockChain &SuccChain = *BlockToChain[Succ]; in findBestLoopExit()
2267 BlockChain *PredChain = BlockToChain[Pred]; in hasViableTopFallthrough()
2276 BlockChain *SuccChain = BlockToChain[Succ]; in hasViableTopFallthrough()
2297 void MachineBlockPlacement::rotateLoop(BlockChain &LoopChain, in rotateLoop()
2322 BlockChain *SuccChain = BlockToChain[Succ]; in rotateLoop()
2335 BlockChain::iterator ExitIt = llvm::find(LoopChain, ExitingBB); in rotateLoop()
2386 BlockChain &LoopChain, const MachineLoop &L, in rotateLoopWithProfile()
2413 BlockChain *PredChain = BlockToChain[Pred]; in rotateLoopWithProfile()
2435 BlockChain *SuccChain = BlockToChain[Succ]; in rotateLoopWithProfile()
2553 BlockChain *Chain = BlockToChain[LoopBB]; in collectLoopBlockSet()
2605 BlockChain &LoopChain = *BlockToChain[LoopTop]; in buildLoopChains()
2610 SmallPtrSet<BlockChain *, 4> UpdatedPreds; in buildLoopChains()
2669 BlockChain *Chain = in buildCFGChains()
2670 new (ChainAllocator.Allocate()) BlockChain(BlockToChain, BB); in buildCFGChains()
2706 SmallPtrSet<BlockChain *, 4> UpdatedPreds; in buildCFGChains()
2710 BlockChain &FunctionChain = *BlockToChain[&F->front()]; in buildCFGChains()
2828 BlockChain &FunctionChain = *BlockToChain[&F->front()]; in optimizeBranches()
2869 BlockChain &FunctionChain = *BlockToChain[&F->front()]; in alignBlocks()
2952 BlockChain &Chain, BlockFilterSet *BlockFilter, in repeatedlyTailDuplicateBlock()
2973 BlockChain::iterator ChainEnd = Chain.end(); in repeatedlyTailDuplicateBlock()
3009 BlockChain &Chain, BlockFilterSet *BlockFilter, in maybeTailDuplicateBlock()
3031 BlockChain *Chain = BlockToChain[RemBB]; in maybeTailDuplicateBlock()
3085 BlockChain* PredChain = BlockToChain[Pred]; in maybeTailDuplicateBlock()
3094 BlockChain *NewChain = BlockToChain[NewSucc]; in maybeTailDuplicateBlock()
3127 BlockChain *PredChain = BlockToChain[Pred]; in isBestSuccessor()
3137 BlockChain *SuccChain = BlockToChain[Succ]; in isBestSuccessor()