]> git.eshelyaron.com Git - emacs.git/commitdiff
ops
authorAndrea Corallo <andrea_corallo@yahoo.it>
Sat, 20 Jul 2019 16:50:41 +0000 (18:50 +0200)
committerAndrea Corallo <akrl@sdf.org>
Wed, 1 Jan 2020 10:33:55 +0000 (11:33 +0100)
lisp/emacs-lisp/comp.el

index cdbae3438737e623bbed7f086531f0388d781565..91aad45bc69b652ee6f835d694e556998d672c5e 100644 (file)
@@ -601,17 +601,24 @@ the annotation emission."
       (byte-rem % Frem)
       (byte-numberp auto)
       (byte-integerp auto)
-      (byte-listN)
+      (byte-listN
+       (comp-stack-adjust (- (1- arg)))
+       (comp-emit-set-call `(callref Flist ,arg ,(comp-sp))))
       (byte-concatN
        (comp-stack-adjust (- (1- arg)))
        (comp-emit-set-call `(callref Fconcat ,arg ,(comp-sp))))
-      (byte-insertN)
+      (byte-insertN
+       (comp-stack-adjust (- (1- arg)))
+       (comp-emit-set-call `(callref Finsert ,arg ,(comp-sp))))
       (byte-stack-set)
       (byte-stack-set2)
       (byte-discardN)
       (byte-switch)
       (byte-constant
-       (comp-emit-set-const arg)))))
+       (comp-emit-set-const arg))
+      (byte-discardN-preserve-tos
+       (comp-stack-adjust (- arg))
+       (comp-copy-slot-n (+ arg (comp-sp)))))))
 
 (defun comp-limplify (func)
   "Given FUNC compute its LIMPLE ir."