aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorStefan Kangas2025-02-28 19:59:12 +0100
committerStefan Kangas2025-02-28 20:20:55 +0100
commit678fdcc16594aaedb319fe145d039aa118174f5d (patch)
tree5f2648a1bca73d40827fd48a45098658baefbbd3 /doc
parent0b0bf7c07f2ecaca1e9b25d72139af0dd7e49832 (diff)
downloademacs-678fdcc16594aaedb319fe145d039aa118174f5d.tar.gz
emacs-678fdcc16594aaedb319fe145d039aa118174f5d.zip
; Grammar fixes for "native-compiled"
1. Prefer "native-compiled" to "native compiled". The adjective "native-compiled" with the hyphen is generally more consistent with the typical pattern in English, especially when the compound modifies a noun (e.g., "native-compiled code"). 2. Prefer "natively compiled" to "natively-compiled". The adverb "natively" modifies "compiled", and it is standard not to hyphenate an adverb + adjective combination when the adverb ends in -ly (e.g., "code that is natively compiled"). For example, note that we say "high-speed internet" but "highly performant code". * Makefile.in (dest): * configure.ac (HAVE_NATIVE_COMP): * doc/emacs/building.texi (Lisp Libraries): * doc/lispref/compile.texi (Native Compilation) (Native-Compilation Functions, Native-Compilation Variables): * doc/lispref/functions.texi (What Is a Function, Declare Form): * doc/lispref/loading.texi (How Programs Do Loading, Library Search): * etc/NEWS: * etc/NEWS.28: * etc/NEWS.29: * etc/NEWS.30: * lisp/emacs-lisp/comp-common.el (native-comp-never-optimize-functions) (comp-function-type-spec): * lisp/emacs-lisp/comp-cstr.el: * lisp/subr.el (locate-eln-file): * src/comp.c (SETJMP_NAME, syms_of_comp): * src/data.c (Fsubrp, Fnative_comp_function_p, Fsubr_native_lambda_list): * src/lread.c (Fload): * src/pdumper.c (dump_do_dump_relocation): * test/src/comp-tests.el (lambda-return2): Avoid grammatically incorrect variations on "natively compiled" and "native-compiled". (Bug#56727)
Diffstat (limited to 'doc')
-rw-r--r--doc/emacs/building.texi4
-rw-r--r--doc/lispref/compile.texi26
-rw-r--r--doc/lispref/functions.texi4
-rw-r--r--doc/lispref/loading.texi8
4 files changed, 21 insertions, 21 deletions
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index 1ee46d91a12..02ca71f069b 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -1580,7 +1580,7 @@ Emacs Lisp Reference Manual}.
1580@cindex native compilation 1580@cindex native compilation
1581 Emacs Lisp code can also be compiled into @dfn{native code}: machine 1581 Emacs Lisp code can also be compiled into @dfn{native code}: machine
1582code not unlike the one produced by a C or Fortran compiler. Native 1582code not unlike the one produced by a C or Fortran compiler. Native
1583code runs even faster than byte-code. Natively-compiled Emacs Lisp 1583code runs even faster than byte-code. Natively compiled Emacs Lisp
1584code is stored in files whose names end in @samp{.eln}. @xref{Native 1584code is stored in files whose names end in @samp{.eln}. @xref{Native
1585Compilation,, Native Compilation, elisp, the Emacs Lisp Reference Manual}. 1585Compilation,, Native Compilation, elisp, the Emacs Lisp Reference Manual}.
1586 1586
@@ -1660,7 +1660,7 @@ way, you don't need to modify the default value of @code{load-path}.
1660 1660
1661@vindex native-comp-eln-load-path 1661@vindex native-comp-eln-load-path
1662 Similarly to @code{load-path}, the list of directories where Emacs 1662 Similarly to @code{load-path}, the list of directories where Emacs
1663looks for @file{*.eln} files with natively-compiled Lisp code is 1663looks for @file{*.eln} files with native-compiled Lisp code is
1664specified by the variable @code{native-comp-eln-load-path}. 1664specified by the variable @code{native-comp-eln-load-path}.
1665 1665
1666@cindex autoload 1666@cindex autoload
diff --git a/doc/lispref/compile.texi b/doc/lispref/compile.texi
index 060b5ccae4c..57e67001847 100644
--- a/doc/lispref/compile.texi
+++ b/doc/lispref/compile.texi
@@ -764,32 +764,32 @@ you to be able to native-compile Lisp code.
764 764
765@vindex native-compile@r{, a Lisp feature} 765@vindex native-compile@r{, a Lisp feature}
766 To determine whether the current Emacs process can produce and load 766 To determine whether the current Emacs process can produce and load
767natively-compiled Lisp code, call 767natively compiled Lisp code, call
768@code{native-comp-available-p} (@pxref{Native-Compilation Functions}). 768@code{native-comp-available-p} (@pxref{Native-Compilation Functions}).
769 769
770 Unlike byte-compiled code, natively-compiled Lisp code is executed 770 Unlike byte-compiled code, native-compiled Lisp code is executed
771directly by the machine's hardware, and therefore runs at full speed 771directly by the machine's hardware, and therefore runs at full speed
772that the host CPU can provide. The resulting speedup generally 772that the host CPU can provide. The resulting speedup generally
773depends on what the Lisp code does, but is usually 2.5 to 5 times 773depends on what the Lisp code does, but is usually 2.5 to 5 times
774faster than the corresponding byte-compiled code. 774faster than the corresponding byte-compiled code.
775 775
776 Since native code is generally incompatible between different 776 Since native code is generally incompatible between different
777systems, the natively-compiled code is @emph{not} transportable from 777systems, the native-compiled code is @emph{not} transportable from
778one machine to another, it can only be used on the same machine where 778one machine to another, it can only be used on the same machine where
779it was produced or on very similar ones (having the same CPU and 779it was produced or on very similar ones (having the same CPU and
780run-time libraries). The transportability of natively-compiled code 780run-time libraries). The transportability of native-compiled code
781is the same as that of shared libraries (@file{.so} or @file{.dll} 781is the same as that of shared libraries (@file{.so} or @file{.dll}
782files). 782files).
783 783
784 Libraries of natively-compiled code include crucial dependencies on 784 Libraries of native-compiled code include crucial dependencies on
785Emacs Lisp primitives (@pxref{What Is a Function}) and their calling 785Emacs Lisp primitives (@pxref{What Is a Function}) and their calling
786conventions, and thus Emacs usually won't load natively-compiled code 786conventions, and thus Emacs usually won't load native-compiled code
787produced by earlier or later Emacs versions; native compilation of the 787produced by earlier or later Emacs versions; native compilation of the
788same Lisp code by a different Emacs version will usually produce a 788same Lisp code by a different Emacs version will usually produce a
789natively-compiled library under a unique file name that only that 789natively compiled library under a unique file name that only that
790version of Emacs will be able to load. However, the use of unique 790version of Emacs will be able to load. However, the use of unique
791file names enables several versions of the same Lisp library 791file names enables several versions of the same Lisp library
792natively-compiled by several different versions of Emacs to be placed 792natively compiled by several different versions of Emacs to be placed
793within the same directory. 793within the same directory.
794 794
795@vindex no-native-compile 795@vindex no-native-compile
@@ -882,7 +882,7 @@ non-@code{nil}, tells the function to place the resulting @file{.eln}
882files in the last directory mentioned in 882files in the last directory mentioned in
883@code{native-comp-eln-load-path} (@pxref{Library Search}); this is 883@code{native-comp-eln-load-path} (@pxref{Library Search}); this is
884meant to be used as part of building an Emacs source tarball for the 884meant to be used as part of building an Emacs source tarball for the
885first time, when the natively-compiled files, which are absent from 885first time, when the native-compiled files, which are absent from
886the source tarball, should be generated in the build tree instead of 886the source tarball, should be generated in the build tree instead of
887the user's cache directory. 887the user's cache directory.
888@end defun 888@end defun
@@ -891,7 +891,7 @@ Native compilation can be run entirely asynchronously, in a subprocess
891of the main Emacs process. This leaves the main Emacs process free to 891of the main Emacs process. This leaves the main Emacs process free to
892use while the compilation runs in the background. This is the method 892use while the compilation runs in the background. This is the method
893used by Emacs to natively-compile any Lisp file or byte-compiled Lisp 893used by Emacs to natively-compile any Lisp file or byte-compiled Lisp
894file that is loaded into Emacs, when no natively-compiled file for it 894file that is loaded into Emacs, when no native-compiled file for it
895is available. Note that because of this use of a subprocess, native 895is available. Note that because of this use of a subprocess, native
896compilation may produce warning and errors which byte-compilation does 896compilation may produce warning and errors which byte-compilation does
897not, and Lisp code may thus need to be modified to work correctly. See 897not, and Lisp code may thus need to be modified to work correctly. See
@@ -938,7 +938,7 @@ in any of the directories mentioned in the
938@deffn Command emacs-lisp-native-compile 938@deffn Command emacs-lisp-native-compile
939This command compiles the file visited by the current buffer into 939This command compiles the file visited by the current buffer into
940native code, if the file was changed since the last time it was 940native code, if the file was changed since the last time it was
941natively-compiled. 941natively compiled.
942@end deffn 942@end deffn
943 943
944@deffn Command emacs-lisp-native-compile-and-load 944@deffn Command emacs-lisp-native-compile-and-load
@@ -1125,13 +1125,13 @@ control this, use a separate variable, described below.
1125This variable controls generation of trampolines. A trampoline is a 1125This variable controls generation of trampolines. A trampoline is a
1126small piece of native code required to allow calling Lisp primitives, 1126small piece of native code required to allow calling Lisp primitives,
1127which were advised or redefined, from Lisp code that was 1127which were advised or redefined, from Lisp code that was
1128natively-compiled with @code{native-comp-speed} set to 2 or greater. 1128natively compiled with @code{native-comp-speed} set to 2 or greater.
1129Emacs stores the generated trampolines on separate @file{*.eln} files. 1129Emacs stores the generated trampolines on separate @file{*.eln} files.
1130By default, this variable's value is @code{t}, which enables the 1130By default, this variable's value is @code{t}, which enables the
1131generation of trampoline files; setting it to @code{nil} disables the 1131generation of trampoline files; setting it to @code{nil} disables the
1132generation of trampolines. Note that if a trampoline needed for 1132generation of trampolines. Note that if a trampoline needed for
1133advising or redefining a primitive is not available and cannot be 1133advising or redefining a primitive is not available and cannot be
1134generated, calls to that primitive from natively-compiled Lisp will 1134generated, calls to that primitive from native-compiled Lisp will
1135ignore redefinitions and advices, and will behave as if the primitive 1135ignore redefinitions and advices, and will behave as if the primitive
1136was called directly from C. Therefore, we don't recommend disabling 1136was called directly from C. Therefore, we don't recommend disabling
1137the trampoline generation, unless you know that all the trampolines 1137the trampoline generation, unless you know that all the trampolines
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi
index 8ed992d3e79..024ff2b7d5a 100644
--- a/doc/lispref/functions.texi
+++ b/doc/lispref/functions.texi
@@ -223,7 +223,7 @@ that is not in the form of ELisp source code but something like
223machine code or byte code instead. More specifically it returns 223machine code or byte code instead. More specifically it returns
224@code{t} if the function is built-in (a.k.a.@: ``primitive'', 224@code{t} if the function is built-in (a.k.a.@: ``primitive'',
225@pxref{What Is a Function}), or byte-compiled (@pxref{Byte 225@pxref{What Is a Function}), or byte-compiled (@pxref{Byte
226Compilation}), or natively-compiled (@pxref{Native Compilation}), or 226Compilation}), or native-compiled (@pxref{Native Compilation}), or
227a function loaded from a dynamic module (@pxref{Dynamic Modules}). 227a function loaded from a dynamic module (@pxref{Dynamic Modules}).
228@end defun 228@end defun
229 229
@@ -2868,7 +2868,7 @@ For description of additional types, see @ref{Lisp Data Types}).
2868 2868
2869Declaring a function with an incorrect type produces undefined behavior 2869Declaring a function with an incorrect type produces undefined behavior
2870and could lead to unexpected results or might even crash Emacs when 2870and could lead to unexpected results or might even crash Emacs when
2871natively-compiled code is loaded, if it was compiled with 2871native-compiled code is loaded, if it was compiled with
2872@code{compilation-safety} level of zero (@pxref{compilation-safety}). 2872@code{compilation-safety} level of zero (@pxref{compilation-safety}).
2873Note also that when redefining (or advising) a type-declared function, 2873Note also that when redefining (or advising) a type-declared function,
2874the replacement should respect the original signature to avoid such 2874the replacement should respect the original signature to avoid such
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index 15922cf1e89..87ebb787250 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -117,7 +117,7 @@ If the option @code{load-prefer-newer} is non-@code{nil}, then when
117searching suffixes, @code{load} selects whichever version of a file 117searching suffixes, @code{load} selects whichever version of a file
118(@samp{.elc}, @samp{.el}, etc.)@: has been modified most recently. 118(@samp{.elc}, @samp{.el}, etc.)@: has been modified most recently.
119In this case, @code{load} doesn't load the @samp{.eln} 119In this case, @code{load} doesn't load the @samp{.eln}
120natively-compiled file even if it exists. 120native-compiled file even if it exists.
121 121
122If @var{filename} is a relative file name, such as @file{foo} or 122If @var{filename} is a relative file name, such as @file{foo} or
123@file{baz/foo.bar}, @code{load} searches for the file using the variable 123@file{baz/foo.bar}, @code{load} searches for the file using the variable
@@ -161,7 +161,7 @@ during compilation. @xref{Compiling Macros}.
161 161
162Messages like @samp{Loading foo...} and @samp{Loading foo...done} appear 162Messages like @samp{Loading foo...} and @samp{Loading foo...done} appear
163in the echo area during loading unless @var{nomessage} is 163in the echo area during loading unless @var{nomessage} is
164non-@code{nil}. If a natively-compiled @samp{.eln} file is loaded, 164non-@code{nil}. If a native-compiled @samp{.eln} file is loaded,
165the message says so. 165the message says so.
166 166
167@cindex load errors 167@cindex load errors
@@ -462,13 +462,13 @@ the shadowed files as a string.
462(@pxref{Native Compilation}), then when a @samp{.elc} byte-compiled 462(@pxref{Native Compilation}), then when a @samp{.elc} byte-compiled
463file is found by searching @code{load-path}, Emacs will try to look 463file is found by searching @code{load-path}, Emacs will try to look
464for a corresponding @samp{.eln} file holding the corresponding 464for a corresponding @samp{.eln} file holding the corresponding
465natively-compiled code. The natively-compiled files are looked up in 465native-compiled code. The native-compiled files are looked up in
466the directories listed by the @code{native-comp-eln-load-path}. 466the directories listed by the @code{native-comp-eln-load-path}.
467 467
468@vindex comp-native-version-dir 468@vindex comp-native-version-dir
469@defvar native-comp-eln-load-path 469@defvar native-comp-eln-load-path
470This variable holds a list of directories where Emacs looks for 470This variable holds a list of directories where Emacs looks for
471natively-compiled @samp{.eln} files. File names in the list that are 471native-compiled @samp{.eln} files. File names in the list that are
472not absolute are interpreted as relative to @code{invocation-directory} 472not absolute are interpreted as relative to @code{invocation-directory}
473(@pxref{System Environment}). The last directory in the list is the 473(@pxref{System Environment}). The last directory in the list is the
474system directory, i.e.@: the directory with @samp{.eln} files 474system directory, i.e.@: the directory with @samp{.eln} files