[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [External] : emacs-28 windows binaries available from alpha
From: |
Eli Zaretskii |
Subject: |
Re: [External] : emacs-28 windows binaries available from alpha |
Date: |
Sat, 05 Feb 2022 12:10:34 +0200 |
> Date: Sat, 05 Feb 2022 09:25:56 +0200
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: dieter@duenenhof-wilhelm.de, corwin@bru.st, emacs-devel@gnu.org
>
> > Debugger entered--Lisp error: (error "Cannot find libgccjit library")
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > error("Cannot find libgccjit library")
> > comp-ensure-native-compiler()
> > comp--native-compile((lambda (arg0 &optional arg1 arg2 arg3) (let ((f
> > #'read-buffer)) (funcall f arg0 arg1 arg2 arg3))) nil
> > "d:/usr/drew/.emacs.d/eln-cache/28.0.91-bfc49136/su...")
> > comp-trampoline-compile(read-buffer)
> > comp-subr-trampoline-install(read-buffer)
> > defalias(read-buffer #f(compiled-function (prompt &optional default
> > require-match predicate) #<bytecode 0x1283e7579f6aadb2>))
> > load-file("~/drews-lisp-20/strings.elc")
> > funcall-interactively(load-file "~/drews-lisp-20/strings.elc")
> > command-execute(load-file record)
> > execute-extended-command(nil "load-file" "load-f")
> > funcall-interactively(execute-extended-command nil "load-file" "load-f")
> > command-execute(execute-extended-command)
>
> Andrea, is this expected on a machine that lacks libgccjit? Under
> what conditions would loading a .elc file trigger native-compilation
> of a trampoline?
>
> If this is expected, I'd prefer that we detected the unavailability of
> libgccjit earlier, and avoided the attempt to compile a trampoline in
> the first place. Can this be done safely enough to make the change on
> the release branch?
Andrea, how about the following patch (which assumes
comp-enable-subr-trampolines enables and disables only generation of
new trampolines, but doesn't affect the use of existing trampolines)?
Is this safe for the release branch, in your opinion?
diff --git a/src/comp.c b/src/comp.c
index 188dc6e..ba65837 100644
--- a/src/comp.c
+++ b/src/comp.c
@@ -434,6 +434,13 @@ load_gccjit_if_necessary (bool mandatory)
gccjit_initialized = init_gccjit_functions ();
status = gccjit_initialized ? Qt : Qnil;
Vlibrary_cache = Fcons (Fcons (Qgccjit, status), Vlibrary_cache);
+ /* Disable deferred async compilation and trampoline synthesis
+ in this session, since libgccjit is not available. */
+ if (!gccjit_initialized)
+ {
+ native_comp_deferred_compilation = false;
+ comp_enable_subr_trampolines = false;
+ }
}
if (mandatory && !gccjit_initialized)
- Re: [External] : emacs-28 windows binaries available from alpha, (continued)
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/05
- Re: [External] : emacs-28 windows binaries available from alpha, H. Dieter Wilhelm, 2022/02/05
- Re: [External] : emacs-28 windows binaries available from alpha, Corwin Brust, 2022/02/05
- RE: [External] : emacs-28 windows binaries available from alpha, Drew Adams, 2022/02/05
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/06
- RE: [External] : emacs-28 windows binaries available from alpha, Drew Adams, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/06
- RE: [External] : emacs-28 windows binaries available from alpha, Drew Adams, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha,
Eli Zaretskii <=
- Re: [External] : emacs-28 windows binaries available from alpha, Corwin Brust, 2022/02/05
- RE: [External] : emacs-28 windows binaries available from alpha, Drew Adams, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/06
- RE: [External] : emacs-28 windows binaries available from alpha, Drew Adams, 2022/02/06
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/09
- Re: [External] : emacs-28 windows binaries available from alpha, Andrea Corallo, 2022/02/09
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/10
- Re: [External] : emacs-28 windows binaries available from alpha, Andrea Corallo, 2022/02/10
- Re: [External] : emacs-28 windows binaries available from alpha, Eli Zaretskii, 2022/02/10
- Re: [External] : emacs-28 windows binaries available from alpha, Andrea Corallo, 2022/02/10