]> git.eshelyaron.com Git - emacs.git/commitdiff
simplify comp-limplify-block
authorAndrea Corallo <akrl@sdf.org>
Sun, 27 Oct 2019 14:16:59 +0000 (15:16 +0100)
committerAndrea Corallo <akrl@sdf.org>
Wed, 1 Jan 2020 10:37:59 +0000 (11:37 +0100)
lisp/emacs-lisp/comp.el

index 858a49b280944e6fc7c73968fb748885b65396fa..d7abb8bfa1a93681b95bfc1f98899b83d15330ce 100644 (file)
@@ -1075,24 +1075,10 @@ The block name is returned."
   (setf (comp-limplify-pc comp-pass) (comp-block-addr bb))
   (puthash (comp-block-name bb) bb (comp-func-blocks comp-func))
   (cl-loop
-   for inst-cell on (nthcdr (comp-limplify-pc comp-pass)
+   for inst in (nthcdr (comp-limplify-pc comp-pass)
                             (comp-func-lap comp-func))
-   for inst = (car inst-cell)
-   for next-inst = (car-safe (cdr inst-cell))
    do (comp-limplify-lap-inst inst)
       (cl-incf (comp-limplify-pc comp-pass))
-   when (comp-lap-fall-through-p inst)
-   do (pcase next-inst
-        (`(TAG ,_label . ,label-sp)
-         (when label-sp
-           (cl-assert (= (1- label-sp) (comp-sp))))
-         (let* ((stack-depth (if label-sp
-                                 (1- label-sp)
-                               (comp-sp)))
-                (next-bb (comp-add-pending-block stack-depth)))
-           (unless (comp-block-closed bb)
-             (comp-emit `(jump ,next-bb))))
-         (cl-return)))
    until (comp-lap-eob-p inst)))
 
 (defun comp-limplify-function (func)