aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-04-25 16:01:47 -0700
committerAlon Zakai <alonzakai@gmail.com>2011-04-25 16:01:47 -0700
commit8700a323173a7222025ffd8e1652a0a4157ebb90 (patch)
tree02f07521ccaca66c234179bcb38e3570a2f87a2b /src
parentd78652a9b95afea436ea111d4a06af98a938c0ca (diff)
tweak relooper, improves fannkuch
Diffstat (limited to 'src')
-rw-r--r--src/analyzer.js9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/analyzer.js b/src/analyzer.js
index 06fff03c..1b438db4 100644
--- a/src/analyzer.js
+++ b/src/analyzer.js
@@ -834,7 +834,7 @@ function analyzer(data) {
return ret;
}
- if (mustReturn) return makeLoop();
+ if (canReturn) return makeLoop();
// === handle multiple branches from the entry with a 'multiple' ===
//
@@ -886,12 +886,7 @@ function analyzer(data) {
if (handlingNow.length == 0) {
// Spaghetti - cannot even find a single label to do before the rest. What a mess.
- // But if there is looping, perhaps we can use that to simplify matters?
- if (canReturn) {
- return makeLoop();
- } else {
- throw "Spaghetti encountered in relooping.";
- }
+ throw "Spaghetti encountered in relooping.";
}
// This is a 'multiple'