diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-02-16 17:37:06 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-02-16 17:37:06 -0800 |
commit | 4b9ab469721113e99878ba05a2146005b524555b (patch) | |
tree | b21bcbd48ad3b1d7fc8de9037f4e65b7bdeb4e72 /share | |
parent | 4be8bc33aca9cd4c8aee2b6583939b0b552891e0 (diff) | |
download | txr-4b9ab469721113e99878ba05a2146005b524555b.tar.gz txr-4b9ab469721113e99878ba05a2146005b524555b.tar.bz2 txr-4b9ab469721113e99878ba05a2146005b524555b.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.
Diffstat (limited to 'share')
-rw-r--r-- | share/txr/stdlib/optimize.tl | 7 |
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 |