Lines Matching refs:Flow

102         if (Edge.Flow > 0) {  in run()
103 TotalCost += Edge.Cost * Edge.Flow; in run()
105 TotalFlow += Edge.Flow; in run()
128 SrcEdge.Flow = 0; in addEdge()
135 DstEdge.Flow = 0; in addEdge()
150 std::vector<std::pair<uint64_t, int64_t>> Flow; in getFlow() local
152 if (Edge.Flow > 0) in getFlow()
153 Flow.push_back(std::make_pair(Edge.Dst, Edge.Flow)); in getFlow()
155 return Flow; in getFlow()
160 int64_t Flow = 0; in getFlow() local
163 Flow += Edge.Flow; in getFlow()
166 return Flow; in getFlow()
215 assert(Edge.Capacity >= Edge.Flow && "incorrect edge flow"); in computeAugmentingPathCapacity()
216 uint64_t EdgeCapacity = uint64_t(Edge.Capacity - Edge.Flow); in computeAugmentingPathCapacity()
264 if (Edge.Flow < Edge.Capacity) { in findAugmentingPath()
294 Edge.Flow += PathCapacity; in augmentFlowAlongPath()
295 RevEdge.Flow -= PathCapacity; in augmentFlowAlongPath()
420 uint64_t MaxIntFlow = double(Edge->Capacity - Edge->Flow) / EdgeFlow; in augmentFlowAlongDAG()
441 EdgeFlow = std::min(EdgeFlow, uint64_t(Edge->Capacity - Edge->Flow)); in augmentFlowAlongDAG()
474 assert(uint64_t(Edge->Capacity - Edge->Flow) >= Edge->AugmentedFlow); in augmentFlowAlongDAG()
477 Edge->Flow += Edge->AugmentedFlow; in augmentFlowAlongDAG()
478 RevEdge.Flow -= Edge->AugmentedFlow; in augmentFlowAlongDAG()
479 if (Edge->Capacity == Edge->Flow && Edge->AugmentedFlow > 0) in augmentFlowAlongDAG()
509 Edge.Capacity > Edge.Flow && in identifyShortestEdges()
510 uint64_t(Edge.Capacity - Edge.Flow) >= MinCapacity; in identifyShortestEdges()
546 int64_t Flow; member
615 if (Block.Flow > 0 && !Visited[I]) { in joinIsolatedComponents()
621 Func.Blocks[Func.Entry].Flow += 1; in joinIsolatedComponents()
623 Jump->Flow += 1; in joinIsolatedComponents()
624 Func.Blocks[Jump->Target].Flow += 1; in joinIsolatedComponents()
645 if (Jump->Flow > 0 && !Visited[Dst]) { in findReachable()
744 std::min(Func.Blocks[Func.Entry].Flow, in jumpDistance()
748 if (Jump->Flow > 0) in jumpDistance()
749 return BaseDistance + BaseDistance / Jump->Flow; in jumpDistance()
793 if (SrcBlock->UnknownWeight || SrcBlock->Flow == 0) in canRebalanceAtRoot()
889 if (Jump->IsUnlikely && Jump->Flow == 0) in ignoreJump()
904 if (!JumpTarget->UnknownWeight && JumpTarget->Flow == 0) in ignoreJump()
970 assert(SrcBlock->Flow > 0 && "zero-flow block in unknown subgraph"); in rebalanceUnknownSubgraph()
978 BlockFlow += Jump->Flow; in rebalanceUnknownSubgraph()
988 BlockFlow += Jump->Flow; in rebalanceUnknownSubgraph()
990 Block->Flow = BlockFlow; in rebalanceUnknownSubgraph()
1017 uint64_t Flow = std::min(SuccFlow, BlockFlow); in rebalanceBlock() local
1018 Jump->Flow = Flow; in rebalanceBlock()
1019 BlockFlow -= Flow; in rebalanceBlock()
1139 int64_t Flow = 0; in extractWeights() local
1145 Flow += DstFlow; in extractWeights()
1148 Block.Flow = Flow; in extractWeights()
1149 assert(Flow >= 0 && "negative block flow"); in extractWeights()
1156 int64_t Flow = 0; in extractWeights() local
1160 Flow = Network.getFlow(SrcOut, DstIn); in extractWeights()
1166 Flow = AuxFlow; in extractWeights()
1168 Jump.Flow = Flow; in extractWeights()
1169 assert(Flow >= 0 && "negative jump flow"); in extractWeights()
1180 InFlow[Jump.Target] += Jump.Flow; in verifyWeights()
1181 OutFlow[Jump.Source] += Jump.Flow; in verifyWeights()
1189 TotalInFlow += Block.Flow; in verifyWeights()
1190 assert(Block.Flow == OutFlow[I] && "incorrectly computed control flow"); 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()
1206 if (Jump.Flow > 0) { in verifyWeights()
1231 assert((Visited[I] || Block.Flow == 0) && "an isolated flow component"); in verifyWeights()