emacs-diffs
[Top][All Lists]
Advanced

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

feature/native-comp 79ca25c 1/2: * Have `native-compile' do not expose `


From: Andrea Corallo
Subject: feature/native-comp 79ca25c 1/2: * Have `native-compile' do not expose `with-late-load' parameter
Date: Tue, 20 Oct 2020 16:29:35 -0400 (EDT)

branch: feature/native-comp
commit 79ca25c085f89760cb87c8e10378a00a4af3fec7
Author: Andrea Corallo <akrl@sdf.org>
Commit: Andrea Corallo <akrl@sdf.org>

    * Have `native-compile' do not expose `with-late-load' parameter
    
    This is really for internal use only by deferred compilation.
    
        * lisp/emacs-lisp/comp.el (comp-trampoline-compile)
        (comp-run-async-workers): Make use of `comp--native-compile'.
        (comp--native-compile): New function.
        (native-compile, batch-native-compile): Make use of
        `comp--native-compile'.
---
 lisp/emacs-lisp/comp.el | 40 +++++++++++++++++++++++-----------------
 1 file changed, 23 insertions(+), 17 deletions(-)

diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index a460340..6c54085 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -2647,7 +2647,7 @@ Return the trampoline if found or nil otherwise."
          (byte-optimize nil)
          (comp-speed 0)
          (lexical-binding t))
-    (native-compile
+    (comp--native-compile
      form nil
      (cl-loop
       for load-dir in comp-eln-load-path
@@ -2796,7 +2796,7 @@ display a message."
                                   load-path ',load-path)
                             ,comp-async-env-modifier-form
                             (message "Compiling %s..." ,source-file)
-                            (native-compile ,source-file ,(and load t))))
+                            (comp--native-compile ,source-file ,(and load t))))
                    (source-file1 source-file) ;; Make the closure works :/
                    (temp-file (make-temp-file
                                (concat "emacs-async-comp-"
@@ -2842,22 +2842,11 @@ display a message."
     ;; Reset it anyway.
     (clrhash comp-deferred-pending-h)))
 
-
-;;; Compiler entry points.
-
-;;;###autoload
-(defun native-compile (function-or-file &optional with-late-load output)
+(defun comp--native-compile (function-or-file &optional with-late-load output)
   "Compile FUNCTION-OR-FILE into native code.
-This is the syncronous entry-point for the Emacs Lisp native
-compiler.
-FUNCTION-OR-FILE is a function symbol, a form or the
-filename of an Emacs Lisp source file.
+This serves as internal implementation of `native-compile'.
 When WITH-LATE-LOAD non-nil mark the compilation unit for late
-load once finished compiling (internal use only).  When OUTPUT is
-non-nil use it as filename for the compiled object.
-If FUNCTION-OR-FILE is a filename return the filename of the
-compiled object.  If FUNCTION-OR-FILE is a function symbol or a
-form return the compiled function."
+load once finished compiling."
   (comp-ensure-native-compiler)
   (unless (or (functionp function-or-file)
               (stringp function-or-file))
@@ -2891,6 +2880,23 @@ form return the compiled function."
       ;; So we return the compiled function.
       (native-elisp-load data))))
 
+
+;;; Compiler entry points.
+
+;;;###autoload
+(defun native-compile (function-or-file &optional output)
+  "Compile FUNCTION-OR-FILE into native code.
+This is the syncronous entry-point for the Emacs Lisp native
+compiler.
+FUNCTION-OR-FILE is a function symbol, a form or the filename of
+an Emacs Lisp source file.
+When OUTPUT is non-nil use it as filename for the compiled
+object.
+If FUNCTION-OR-FILE is a filename return the filename of the
+compiled object.  If FUNCTION-OR-FILE is a function symbol or a
+form return the compiled function."
+  (comp--native-compile function-or-file nil output))
+
 ;;;###autoload
 (defun batch-native-compile ()
   "Run `native-compile' on remaining command-line arguments.
@@ -2900,7 +2906,7 @@ Ultra cheap impersonation of `batch-byte-compile'."
            if (or (null byte-native-for-bootstrap)
                   (cl-notany (lambda (re) (string-match re file))
                              comp-bootstrap-black-list))
-           do (native-compile file)
+           do (comp--native-compile file)
            else
            do (byte-compile-file file)))
 



reply via email to

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