aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <azakai@mozilla.com>2011-01-19 22:57:53 -0800
committerAlon Zakai <azakai@mozilla.com>2011-01-19 22:57:53 -0800
commit8422a8ee2ccb1ace76360b7066183690a3d9ec3f (patch)
treeae07c0a79532a0c9f2e9f958c719beabaf397b85 /src/parseTools.js
parent835183152d232f5076ae024afced5a796f6c48ef (diff)
Optimize out some loop labels
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index 52afcfe7..fed1ee7c 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -512,13 +512,14 @@ function calcAllocatedSize(type, TYPES) {
// Flow blocks
function recurseBlock(block, func) {
+ var ret = [];
if (block.type == 'reloop') {
- func(block.inner);
+ ret.push(func(block.inner));
} else if (block.type == 'multiple') {
- block.entryLabels.forEach(function(entryLabel) { func(entryLabel.block) });
+ block.entryLabels.forEach(function(entryLabel) { ret.push(func(entryLabel.block)) });
}
-
- func(block.next);
+ ret.push(func(block.next));
+ return ret;
}
function getActualLabelId(labelId) {