Lines Matching refs:Blocks
626 auto &Block = Func.Blocks[I]; in joinIsolatedComponents()
633 Func.Blocks[Func.Entry].Flow += 1; in joinIsolatedComponents()
636 Func.Blocks[Jump->Target].Flow += 1; in joinIsolatedComponents()
655 for (auto *Jump : Func.Blocks[Src].SuccJumps) { in findReachable()
687 if (Func.Blocks[Source].isExit() && Target == AnyExitBlock) in findShortestPath()
703 (Func.Blocks[Src].isExit() && Target == AnyExitBlock)) in findShortestPath()
706 for (auto *Jump : Func.Blocks[Src].SuccJumps) { in findShortestPath()
722 if (Func.Blocks[I].isExit() && Parent[I] != nullptr) { in findShortestPath()
758 std::min(Func.Blocks[Func.Entry].Flow, in jumpDistance()
765 uint64_t NumBlocks() const { return Func.Blocks.size(); } in NumBlocks()
773 for (const FlowBlock &SrcBlock : Func.Blocks) { in rebalanceUnknownSubgraphs()
810 if (Func.Blocks[Jump->Target].HasUnknownWeight) { in canRebalanceAtRoot()
834 auto &Block = Func.Blocks[Queue.front()]; in findUnknownSubgraph()
848 if (!Func.Blocks[Dst].HasUnknownWeight) { in findUnknownSubgraph()
849 KnownDstBlocks.push_back(&Func.Blocks[Dst]); in findUnknownSubgraph()
852 UnknownBlocks.push_back(&Func.Blocks[Dst]); in findUnknownSubgraph()
903 auto JumpSource = &Func.Blocks[Jump->Source]; in ignoreJump()
904 auto JumpTarget = &Func.Blocks[Jump->Target]; in ignoreJump()
946 FlowBlock *Block = &Func.Blocks[Queue.front()]; in isAcyclicSubgraph()
1058 uint64_t NumBlocks = Func.Blocks.size(); in initializeNetwork()
1076 auto &Block = Func.Blocks[B]; in initializeNetwork()
1186 uint64_t NumBlocks = Func.Blocks.size(); in extractWeights()
1214 auto &Block = Func.Blocks[B]; in extractWeights()
1223 assert(Func.Entry == 0 && Func.Blocks[0].isEntry()); in verifyInput()
1225 for (size_t I = 1; I < Func.Blocks.size(); I++) { in verifyInput()
1226 assert(!Func.Blocks[I].isEntry() && "multiple entry blocks"); in verifyInput()
1227 if (Func.Blocks[I].isExit()) in verifyInput()
1233 for (auto &Block : Func.Blocks) { in verifyInput()
1241 for (auto &Block : Func.Blocks) { in verifyInput()
1246 for (auto &Block : Func.Blocks) { in verifyInput()
1259 const uint64_t NumBlocks = Func.Blocks.size(); in verifyOutput()
1270 auto &Block = Func.Blocks[I]; in verifyOutput()
1313 auto &Block = Func.Blocks[I]; in verifyOutput()
1326 for (FlowBlock &Block : Func.Blocks) { in applyFlowInference()
1338 if (Func.Blocks.size() <= 1 || !HasSamples) in applyFlowInference()