summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxim Kalaev <maximk@il.ibm.com>2012-10-12 06:16:06 (GMT)
committerMaxim Kalaev <maximk@il.ibm.com>2012-10-12 07:22:25 (GMT)
commitc4fc36cfd64fc7ee8b79efcef4d6106dca675b97 (patch)
treea2e73bf181dbcc834e33a132c254dd52ecf54986
parent6b1d5c259009ab576524af707ee01b10361a5512 (diff)
downloadNinja-c4fc36cfd64fc7ee8b79efcef4d6106dca675b97.zip
Ninja-c4fc36cfd64fc7ee8b79efcef4d6106dca675b97.tar.gz
Ninja-c4fc36cfd64fc7ee8b79efcef4d6106dca675b97.tar.bz2
build metrics: StartEdge and EndEdge
Total build time is also relevant. The costs of StartEdge and EndEdge turned out to be quite surprising. Especially if multiple targets are specified on edges. (I've tried declaring depfiles targets explicitly)
-rw-r--r--src/build.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/build.cc b/src/build.cc
index 9877db8..19775e7 100644
--- a/src/build.cc
+++ b/src/build.cc
@@ -728,6 +728,7 @@ bool Builder::Build(string* err) {
}
bool Builder::StartEdge(Edge* edge, string* err) {
+ METRIC_RECORD("StartEdge");
if (edge->is_phony())
return true;
@@ -758,6 +759,7 @@ bool Builder::StartEdge(Edge* edge, string* err) {
}
void Builder::FinishEdge(Edge* edge, bool success, const string& output) {
+ METRIC_RECORD("FinishEdge");
TimeStamp restat_mtime = 0;
if (success) {