summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--stdlib/optimize.tl12
1 files changed, 4 insertions, 8 deletions
diff --git a/stdlib/optimize.tl b/stdlib/optimize.tl
index db069efa..5f81bc10 100644
--- a/stdlib/optimize.tl
+++ b/stdlib/optimize.tl
@@ -309,10 +309,8 @@
(jmp @(and @jjlabel @(not @jlabel))) . @nil)
^(if ,reg ,jjlabel))
((@jlabel
- (ifq @reg (t 0) @jjlabel) . @jrest)
- (let ((xbl (if jrest
- bb.(cut-block [bb.hash jlabel] jrest jinsns)
- bb.(next-block [bb.hash jlabel]))))
+ (ifq @reg (t 0) @jjlabel) . @nil)
+ (let ((xbl bb.(next-block [bb.hash jlabel])))
(if xbl
^(if ,reg ,xbl.label)
insn)))
@@ -326,10 +324,8 @@
^(ifq ,reg ,creg ,jjlabel))
((@(require @jlabel (equal creg '(t 0)))
(if @reg
- @(and @jjlabel @(not @jlabel))) . @jrest)
- (let ((xbl (if jrest
- bb.(cut-block [bb.hash jlabel] jrest jinsns)
- bb.(next-block [bb.hash jlabel]))))
+ @(and @jjlabel @(not @jlabel))) . @nil)
+ (let ((xbl bb.(next-block [bb.hash jlabel])))
(if xbl
^(ifq ,reg ,creg ,xbl.label)
insn)))