From: Scott Graham Date: Mon, 27 Apr 2015 18:12:43 +0000 (-0700) Subject: simplify & inline X-Git-Tag: v1.6.0^2~7^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bf2f4b7356c8ea918718651bae586149ab97ebee;p=platform%2Fupstream%2Fninja.git simplify & inline --- diff --git a/src/build.cc b/src/build.cc index e266b5c..cdb8e0a 100644 --- a/src/build.cc +++ b/src/build.cc @@ -374,24 +374,19 @@ void Plan::ScheduleWork(Edge* edge) { } } -void Plan::ResumeDelayedJobs(Edge* edge) { - edge->pool()->EdgeFinished(*edge); - edge->pool()->RetrieveReadyEdges(&ready_); -} - -void Plan::EdgeFinished(Edge* edge, bool directly_wanted) { +void Plan::EdgeFinished(Edge* edge) { map::iterator e = want_.find(edge); assert(e != want_.end()); - if (e->second) + bool directly_wanted = e->second; + if (directly_wanted) --wanted_edges_; want_.erase(e); edge->outputs_ready_ = true; - // See if this job frees up any delayed jobs + // See if this job frees up any delayed jobs. if (directly_wanted) - ResumeDelayedJobs(edge); - else - edge->pool()->RetrieveReadyEdges(&ready_); + edge->pool()->EdgeFinished(*edge); + edge->pool()->RetrieveReadyEdges(&ready_); // Check off any nodes we were waiting for with this edge. for (vector::iterator o = edge->outputs_.begin(); @@ -415,7 +410,7 @@ void Plan::NodeFinished(Node* node) { } else { // We do not need to build this edge, but we might need to build one of // its dependents. - EdgeFinished(*oe, want_e->second); + EdgeFinished(*oe); } } } diff --git a/src/build.h b/src/build.h index 6eabae5..8106faa 100644 --- a/src/build.h +++ b/src/build.h @@ -58,7 +58,7 @@ struct Plan { /// Mark an edge as done building. Used internally and by /// tests. - void EdgeFinished(Edge* edge, bool directly_wanted = true); + void EdgeFinished(Edge* edge); /// Clean the given node during the build. /// Return false on error. @@ -78,11 +78,6 @@ private: /// currently-full pool. void ScheduleWork(Edge* edge); - /// Allows jobs blocking on |edge| to potentially resume. - /// For example, if |edge| is a member of a pool, calling this may schedule - /// previously pending jobs in that pool. - void ResumeDelayedJobs(Edge* edge); - /// Keep track of which edges we want to build in this plan. If this map does /// not contain an entry for an edge, we do not want to build the entry or its /// dependents. If an entry maps to false, we do not want to build it, but we