diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-05-16 17:06:02 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-05-16 17:06:02 -0700 |
commit | 3a01c5d7d1f03fb88d249ca1ecca6325b77e799a (patch) | |
tree | 0d1654534909863047c575d169e0dd392100fd93 /src | |
parent | 70e761dd4e75f658797457c427e1388dd91f678a (diff) | |
download | binaryen-3a01c5d7d1f03fb88d249ca1ecca6325b77e799a.tar.gz binaryen-3a01c5d7d1f03fb88d249ca1ecca6325b77e799a.tar.bz2 binaryen-3a01c5d7d1f03fb88d249ca1ecca6325b77e799a.zip |
add total vars (non-param locals) to metrics
Diffstat (limited to 'src')
-rw-r--r-- | src/passes/Metrics.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/passes/Metrics.cpp b/src/passes/Metrics.cpp index c18d1d7cd..a6d51adbf 100644 --- a/src/passes/Metrics.cpp +++ b/src/passes/Metrics.cpp @@ -44,8 +44,16 @@ struct Metrics : public WalkerPass<PostWalker<Metrics, UnifiedExpressionVisitor< keys.push_back(i.first); total += i.second; } + // add total keys.push_back("[total]"); counts["[total]"] = total; + // add vars + size_t vars = 0; + for (auto& func : module->functions) { + vars += func->getNumVars(); + } + keys.push_back("[vars]"); + counts["[vars]"] = vars; sort(keys.begin(), keys.end(), [](const char* a, const char* b) -> bool { return strcmp(b, a) > 0; }); |