summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-02-16 17:37:06 -0800
committerKaz Kylheku <kaz@kylheku.com>2021-02-16 17:37:06 -0800
commitf2fc3f84f4d6aa36f6c55db5eace5025c19993cf (patch)
treeb21bcbd48ad3b1d7fc8de9037f4e65b7bdeb4e72
parent9aef25b8b9332bb99f78f09c3f9abf5f77cdcc90 (diff)
downloadtxr-f2fc3f84f4d6aa36f6c55db5eace5025c19993cf.tar.gz
txr-f2fc3f84f4d6aa36f6c55db5eace5025c19993cf.tar.bz2
txr-f2fc3f84f4d6aa36f6c55db5eace5025c19993cf.zip
compiler: remove unreachable optimization.
* share/txr/stdlib/optimize.tl (basic-blocks peephole-block): Remove the special optimization involving an unconditional jump followed by an if, to a block which tests the same register with another if. This optimization can't match because a jmp and if cannot be in a basic block together.
-rw-r--r--share/txr/stdlib/optimize.tl7
1 files changed, 0 insertions, 7 deletions
diff --git a/share/txr/stdlib/optimize.tl b/share/txr/stdlib/optimize.tl
index e2cb0020..b0363755 100644
--- a/share/txr/stdlib/optimize.tl
+++ b/share/txr/stdlib/optimize.tl
@@ -90,13 +90,6 @@
(jmp @(and @jjlabel @(not @jlabel))) . @nil)
^((jmp ,jjlabel) ,*rest))
(@jelse insns))))
- (((if @reg @jlabel0)
- (jmp @(with @jlabel1
- @(hash (@jlabel1 (@jlabel1
- (if @reg @nil)
- (jmp @jlabel2) . @nil)))
- bb.hash)) . @rest)
- ^(,(car insns) (jmp ,jlabel2) ,*rest))
(((if @reg @jlabel) . @rest)
(let ((jinsns [bb.hash jlabel]))
(match-case jinsns