From: Andrea Corallo Date: Thu, 16 Nov 2023 09:19:20 +0000 (+0100) Subject: Clean-up some native-comp advice special handling. X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=46c2fffd891ae4392f6d5d2ec4a68011c06aa37d;p=emacs.git Clean-up some native-comp advice special handling. * lisp/emacs-lisp/nadvice.el (advice--add-function): Clean-up nativecomp special handling. * lisp/emacs-lisp/advice.el (ad-add-advice): Likewise. --- diff --git a/lisp/emacs-lisp/advice.el b/lisp/emacs-lisp/advice.el index 2a668f6ce0e..a6974e07cb2 100644 --- a/lisp/emacs-lisp/advice.el +++ b/lisp/emacs-lisp/advice.el @@ -2067,9 +2067,6 @@ mapped to the closest extremal position). If FUNCTION was not advised already, its advice info will be initialized. Redefining a piece of advice whose name is part of the cache-id will clear the cache." - (when (and (featurep 'native-compile) - (subr-primitive-p (symbol-function function))) - (comp-subr-trampoline-install function)) (cond ((not (ad-is-advised function)) (ad-initialize-advice-info function) (ad-set-advice-info-field diff --git a/lisp/emacs-lisp/nadvice.el b/lisp/emacs-lisp/nadvice.el index 6c5b11d2bd4..42027c01491 100644 --- a/lisp/emacs-lisp/nadvice.el +++ b/lisp/emacs-lisp/nadvice.el @@ -391,23 +391,6 @@ is also interactive. There are 3 cases: ;;;###autoload (defun advice--add-function (how ref function props) - (when (and (featurep 'native-compile) - (subr-primitive-p (gv-deref ref))) - (let ((subr-name (intern (subr-name (gv-deref ref))))) - ;; Requiring the native compiler to advice `macroexpand' cause a - ;; circular dependency in eager macro expansion. uniquify is - ;; advising `rename-buffer' while being loaded in loadup.el. - ;; This would require the whole native compiler machinery but we - ;; don't want to include it in the dump. Because these two - ;; functions are already handled in - ;; `native-comp-never-optimize-functions' we hack the problem - ;; this way for now :/ - (unless (memq subr-name '(macroexpand rename-buffer)) - ;; Must require explicitly as during bootstrap we have no - ;; autoloads. - (require 'comp-run) - (declare-function comp-subr-trampoline-install "comp-run") - (comp-subr-trampoline-install subr-name)))) (let* ((name (cdr (assq 'name props))) (a (advice--member-p (or name function) (if name t) (gv-deref ref)))) (when a