Lines Matching refs:Block
614 auto &Block = Func.Blocks[I]; in joinIsolatedComponents() local
615 if (Block.Flow > 0 && !Visited[I]) { in joinIsolatedComponents()
823 auto &Block = Func.Blocks[Queue.front()]; in findUnknownSubgraph() local
826 for (auto Jump : Block.SuccJumps) { in findUnknownSubgraph()
863 for (auto Block : UnknownBlocks) { in canRebalanceSubgraph() local
864 if (Block->SuccJumps.empty()) { in canRebalanceSubgraph()
871 for (auto Jump : Block->SuccJumps) { in canRebalanceSubgraph()
877 if (NumIgnoredJumps == Block->SuccJumps.size()) in canRebalanceSubgraph()
916 auto fillInDegree = [&](const FlowBlock *Block) { in isAcyclicSubgraph() argument
917 for (auto Jump : Block->SuccJumps) { in isAcyclicSubgraph()
924 for (auto Block : UnknownBlocks) { in isAcyclicSubgraph() local
925 fillInDegree(Block); in isAcyclicSubgraph()
935 FlowBlock *Block = &Func.Blocks[Queue.front()]; in isAcyclicSubgraph() local
938 if (DstBlock != nullptr && Block == DstBlock) in isAcyclicSubgraph()
942 if (Block->UnknownWeight && Block != SrcBlock) in isAcyclicSubgraph()
943 AcyclicOrder.push_back(Block); in isAcyclicSubgraph()
946 for (auto Jump : Block->SuccJumps) { in isAcyclicSubgraph()
983 for (auto Block : UnknownBlocks) { in rebalanceUnknownSubgraph() local
984 assert(Block->UnknownWeight && "incorrect unknown subgraph"); in rebalanceUnknownSubgraph()
987 for (auto Jump : Block->PredJumps) { in rebalanceUnknownSubgraph()
990 Block->Flow = BlockFlow; in rebalanceUnknownSubgraph()
991 rebalanceBlock(SrcBlock, DstBlock, Block, BlockFlow); in rebalanceUnknownSubgraph()
998 const FlowBlock *Block, uint64_t BlockFlow) { in rebalanceBlock() argument
1001 for (auto Jump : Block->SuccJumps) { in rebalanceBlock()
1014 for (auto Jump : Block->SuccJumps) { in rebalanceBlock()
1057 auto &Block = Func.Blocks[B]; in initializeNetwork() local
1058 assert((!Block.UnknownWeight || Block.Weight == 0 || Block.isEntry()) && in initializeNetwork()
1065 if (Block.Weight > 0) { in initializeNetwork()
1066 Network.addEdge(S1, Bout, Block.Weight, 0); in initializeNetwork()
1067 Network.addEdge(Bin, T1, Block.Weight, 0); in initializeNetwork()
1071 assert((!Block.isEntry() || !Block.isExit()) && in initializeNetwork()
1073 if (Block.isEntry()) { in initializeNetwork()
1075 } else if (Block.isExit()) { in initializeNetwork()
1085 if (Block.UnknownWeight) { in initializeNetwork()
1092 if (Block.Weight == 0) { in initializeNetwork()
1096 if (Block.isEntry()) { in initializeNetwork()
1103 if (Block.HasSelfEdge) { in initializeNetwork()
1109 if (Block.Weight > 0) { in initializeNetwork()
1137 auto &Block = Func.Blocks[Src]; in extractWeights() local
1144 if (!IsAuxNode || Block.HasSelfEdge) { in extractWeights()
1148 Block.Flow = Flow; in extractWeights()
1187 auto &Block = Func.Blocks[I]; in verifyWeights() local
1188 if (Block.isEntry()) { in verifyWeights()
1189 TotalInFlow += Block.Flow; in verifyWeights()
1190 assert(Block.Flow == OutFlow[I] && "incorrectly computed control flow"); in verifyWeights()
1191 } else if (Block.isExit()) { in verifyWeights()
1192 TotalOutFlow += Block.Flow; in verifyWeights()
1193 assert(Block.Flow == InFlow[I] && "incorrectly computed control flow"); in verifyWeights()
1195 assert(Block.Flow == OutFlow[I] && "incorrectly computed control flow"); in verifyWeights()
1196 assert(Block.Flow == InFlow[I] && "incorrectly computed control flow"); in verifyWeights()
1230 auto &Block = Func.Blocks[I]; in verifyWeights() local
1231 assert((Visited[I] || Block.Flow == 0) && "an isolated flow component"); in verifyWeights()