aboutsummaryrefslogtreecommitdiff
path: root/tools/js-optimizer.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-08-23 14:33:20 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-08-23 14:36:21 -0700
commit5cd6b69ef49a6dd69189005724fbdc0954082301 (patch)
treee5b261a8e902856f2c73a73adea0a54ccf1ffd6b /tools/js-optimizer.js
parent989ccaf06574ec39338c827ad1eb88c1773c25ba (diff)
vacuum before outlining, for consistency
Diffstat (limited to 'tools/js-optimizer.js')
-rw-r--r--tools/js-optimizer.js3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js
index a673e019..668438be 100644
--- a/tools/js-optimizer.js
+++ b/tools/js-optimizer.js
@@ -1236,7 +1236,7 @@ function vacuum(ast) {
}
} break;
case 'label': {
- if (node[2][0] === 'toplevel' && (!node[2][1] || node[2][1].length === 0)) {
+ if (node[2] && node[2][0] === 'toplevel' && (!node[2][1] || node[2][1].length === 0)) {
return emptyNode();
}
} break;
@@ -3627,6 +3627,7 @@ function outline(ast) {
var newFuncs = [];
funcs.forEach(function(func) {
+ vacuum(func); // clear out empty nodes that affect code size
var asmData = normalizeAsm(func);
var size = measureSize(func);
if (size >= extraInfo.sizeToOutline) {