Home
last modified time | relevance | path

Searched refs:vertex (Results 1 – 9 of 9) sorted by relevance

/system/update_engine/payload_generator/
Dtarjan.cc34 void TarjanAlgorithm::Execute(Vertex::Index vertex, in Execute() argument
42 required_vertex_ = vertex; in Execute()
44 Tarjan(vertex, graph); in Execute()
49 void TarjanAlgorithm::Tarjan(Vertex::Index vertex, Graph* graph) { in Tarjan() argument
50 CHECK_EQ((*graph)[vertex].index, kInvalidIndex); in Tarjan()
51 (*graph)[vertex].index = index_; in Tarjan()
52 (*graph)[vertex].lowlink = index_; in Tarjan()
54 stack_.push_back(vertex); in Tarjan()
55 for (Vertex::EdgeMap::iterator it = (*graph)[vertex].out_edges.begin(); in Tarjan()
56 it != (*graph)[vertex].out_edges.end(); ++it) { in Tarjan()
[all …]
Dcycle_breaker.cc156 bool CycleBreaker::Circuit(Vertex::Index vertex, Vertex::Index depth) { in Circuit() argument
159 stack_.push_back(vertex); in Circuit()
160 blocked_[vertex] = true; in Circuit()
176 subgraph_[vertex].subgraph_edges.begin(); in Circuit()
177 w != subgraph_[vertex].subgraph_edges.end(); ++w) { in Circuit()
194 Unblock(vertex); in Circuit()
197 subgraph_[vertex].subgraph_edges.begin(); in Circuit()
198 w != subgraph_[vertex].subgraph_edges.end(); ++w) { in Circuit()
199 if (blocked_graph_[*w].out_edges.find(vertex) == in Circuit()
201 blocked_graph_[*w].out_edges.insert(make_pair(vertex, in Circuit()
[all …]
Dinplace_generator.cc108 Vertex* vertex, in SubstituteBlocks() argument
113 ExpandExtents(vertex->aop.op.src_extents()); in SubstituteBlocks()
125 for (auto& edge_prop_pair : vertex->out_edges) { in SubstituteBlocks()
134 vertex->aop.op.clear_src_extents(); in SubstituteBlocks()
136 StoreExtents(new_extents, vertex->aop.op.mutable_src_extents()); in SubstituteBlocks()
660 Vertex* vertex) { in CreateScratchNode() argument
661 vertex->aop.name = "<scratch>"; in CreateScratchNode()
662 vertex->aop.op.set_type(InstallOperation::REPLACE_BZ); in CreateScratchNode()
663 vertex->aop.op.set_data_offset(0); in CreateScratchNode()
664 vertex->aop.op.set_data_length(0); in CreateScratchNode()
[all …]
Dtarjan.h38 void Execute(Vertex::Index vertex,
42 void Tarjan(Vertex::Index vertex, Graph* graph);
Dinplace_generator.h82 static void SubstituteBlocks(Vertex* vertex,
174 Vertex* vertex);
185 Vertex::Index vertex,
Dinplace_generator_unittest.cc146 Vertex vertex; in TEST_F() local
147 InstallOperation& op = vertex.aop.op; in TEST_F()
153 InplaceGenerator::SubstituteBlocks(&vertex, remove_blocks, replace_blocks); in TEST_F()
563 Vertex vertex; in TEST_F() local
564 InplaceGenerator::CreateScratchNode(12, 34, &vertex); in TEST_F()
565 EXPECT_EQ(InstallOperation::REPLACE_BZ, vertex.aop.op.type()); in TEST_F()
566 EXPECT_EQ(0U, vertex.aop.op.data_offset()); in TEST_F()
567 EXPECT_EQ(0U, vertex.aop.op.data_length()); in TEST_F()
568 EXPECT_EQ(1, vertex.aop.op.dst_extents_size()); in TEST_F()
569 EXPECT_EQ(12U, vertex.aop.op.dst_extents(0).start_block()); in TEST_F()
[all …]
Dcycle_breaker.h53 bool Circuit(Vertex::Index vertex, Vertex::Index depth);
Dcycle_breaker_unittest.cc40 for (Vertex& vertex : *graph) { in SetOpForNodes()
41 vertex.aop.op.set_type(InstallOperation::MOVE); in SetOpForNodes()
/system/core/libmemunreachable/
DTarjan.h71 void Tarjan(Node<T>* vertex, Graph<T>& graph);
97 void TarjanAlgorithm<T>::Tarjan(Node<T>* vertex, Graph<T>& graph) { in Tarjan() argument
98 assert(vertex->index == UNDEFINED_INDEX); in Tarjan()
99 vertex->index = index_; in Tarjan()
100 vertex->lowlink = index_; in Tarjan()
102 stack_.push_back(vertex); in Tarjan()
103 for (auto& it: vertex->references_out) { in Tarjan()
107 vertex->lowlink = std::min(vertex->lowlink, vertex_next->lowlink); in Tarjan()
109 vertex->lowlink = std::min(vertex->lowlink, vertex_next->index); in Tarjan()
112 if (vertex->lowlink == vertex->index) { in Tarjan()
[all …]