emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

feature/native-comp 6d850b5: * Make the Evil happy (Bug#41374)


From: Andrea Corallo
Subject: feature/native-comp 6d850b5: * Make the Evil happy (Bug#41374)
Date: Mon, 18 May 2020 14:20:00 -0400 (EDT)

branch: feature/native-comp
commit 6d850b50c536d558252017d4daea5d5718dcc8b2
Author: Andrea Corallo <address@hidden>
Commit: Andrea Corallo <address@hidden>

    * Make the Evil happy (Bug#41374)
    
        * lisp/emacs-lisp/comp.el (comp-never-optimize-functions):
        Blacklist all primitives advised by evil-mode from trampoline
        optimization.
        (comp-call-optim-form-call): Prevent trampoline optimization for
        recursive calls at speed 2 to respect elisp original semantic.
---
 lisp/emacs-lisp/comp.el | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 662cfe2..cd1e4db 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -103,7 +103,10 @@ Skip if any is matching."
     macroexpand scroll-down scroll-up narrow-to-region widen rename-buffer
     make-indirect-buffer delete-file top-level abort-recursive-edit
     ;; For user convenience
-    yes-or-no-p)
+    yes-or-no-p
+    ;; Make the Evil happy :/
+    read-key-sequence select-window set-window-buffer split-window-internal
+    use-global-map use-local-map)
   "Primitive functions for which we do not perform trampoline optimization.
 This is especially useful for primitives known to be advised or
 redefined when compilation is performed at `comp-speed' > 0."
@@ -1983,10 +1986,9 @@ Backward propagate array placement properties."
                          (fill-args args maxarg))))
             `(,call-type ,callee ,@args)))
          ;; Intra compilation unit procedure call optimization.
-         ;; Attention speed 3 triggers that for non self calls too!!
-         ((or (eq callee self)
-              (and (>= comp-speed 3)
-                   callee-in-unit))
+         ;; Attention speed 3 triggers this for non self calls too!!
+         ((and (>= comp-speed 3)
+               callee-in-unit)
           (let* ((func-args (comp-func-args callee-in-unit))
                  (nargs (comp-nargs-p func-args))
                  (call-type (if nargs 'direct-callref 'direct-call))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]