emacs-diffs
[Top][All Lists]
Advanced

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

emacs-28 fdb6f7cf26: ; Fix documentation of 'comp-enable-subr-trampoline


From: Eli Zaretskii
Subject: emacs-28 fdb6f7cf26: ; Fix documentation of 'comp-enable-subr-trampolines'
Date: Sat, 15 Oct 2022 05:16:53 -0400 (EDT)

branch: emacs-28
commit fdb6f7cf26fad194e8b5c6a599db94fa79976591
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    ; Fix documentation of 'comp-enable-subr-trampolines'
    
    * src/comp.c (syms_of_comp) <comp-enable-subr-trampolines>:
    Explain better what it means to disable trampoline synthesis.
---
 src/comp.c | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/comp.c b/src/comp.c
index dc0359acda..b667dfbf90 100644
--- a/src/comp.c
+++ b/src/comp.c
@@ -5523,8 +5523,21 @@ The last directory of this list is assumed to be the 
system one.  */);
   Vnative_comp_eln_load_path = Fcons (build_string ("../native-lisp/"), Qnil);
 
   DEFVAR_BOOL ("comp-enable-subr-trampolines", comp_enable_subr_trampolines,
-              doc: /* If non-nil enable primitive trampoline synthesis.
-This makes primitive functions redefinable or advisable effectively.  */);
+              doc: /* If non-nil, enable primitive trampoline synthesis.
+This makes Emacs respect redefinition or advises of primitive functions
+when they are called from Lisp code natively-compiled at `native-comp-speed'
+of 2.
+
+By default, this is enabled, and when Emacs sees a redefined or advised
+primitive called from natively-compiled Lisp, it generates a trampoline
+for it on-the-fly.
+
+Disabling this, when a trampoline for a redefined or advised primitive is
+not available from previous compilations, means that such redefinition
+or advise will not have effect on calls from natively-compiled Lisp code.
+That is, calls to primitives without existing trampolines from
+natively-compiled Lisp will behave as if the primitive was called
+directly from C.  */);
 
   DEFVAR_LISP ("comp-installed-trampolines-h", Vcomp_installed_trampolines_h,
               doc: /* Hash table subr-name -> installed trampoline.



reply via email to

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