From 8da012e224276e42c15d613c0aac3ce3e1a3d939 Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Sat, 20 Jul 2019 18:50:41 +0200 Subject: [PATCH] ops --- lisp/emacs-lisp/comp.el | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index cdbae343873..91aad45bc69 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -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." -- 2.39.5