bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#46256: [feature/native-comp] AOT eln files ignored if run from build


From: Andrea Corallo
Subject: bug#46256: [feature/native-comp] AOT eln files ignored if run from build tree
Date: Wed, 03 Mar 2021 20:21:38 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Wed, 03 Mar 2021 21:46:44 +0200
>> From: Eli Zaretskii <eliz@gnu.org>
>> Cc: 46256@debbugs.gnu.org, andrewjmoreton@gmail.com
>> 
>> >   emacs_abort at src/w32fns.c:10947
>> >   terminate_due_to_signal at src/emacs.c:417
>> >   die at src/alloc.c:7452
>> >   XNATIVE_COMP_UNIT at src/comp.h:70
>> >   load_comp_unit at src/comp.c:4766
>> >   syms_of_comp at src/comp.c:5077
>> >   Fload at src/lread.c:1548
>> 
>> It looks like these crashes are when compiling subr-x, because I see
>> zero-sized subr-x-XXXXX.eln.tmp files in the eln-cache directory.
>
> Yes:
>
>   (gdb) r -batch -l comp -f batch-native-compile ../lisp/emacs-lisp/subr-x.el
>   Starting program: D:\gnu\git\emacs\native-comp\src\emacs.exe -batch -l comp 
> -f batch-native-compile ../lisp/emacs-lisp/subr-x.el
>   warning: Enabling Low Fragmentation Heap failed: error 31
>   [New Thread 14244.0x320c]
>   [New Thread 14244.0x3540]
>   [Thread 14244.0x3540 exited with code 1]
>   Debugger entered--Lisp error: (native-compiler-error 
> "../lisp/emacs-lisp/subr-x.el" "\nException 0xc0000005 at this 
> address:\n07cdac3e\n\nB...")
>     signal(native-compiler-error ("../lisp/emacs-lisp/subr-x.el" "\nException 
> 0xc0000005 at this address:\n07cdac3e\n\nB..."))
>     comp--native-compile("../lisp/emacs-lisp/subr-x.el")
>     batch-native-compile()
>     command-line-1(("-l" "comp" "-f" "batch-native-compile" 
> "../lisp/emacs-lisp/subr-x.el"))
>     command-line()
>     normal-top-level()
>
> So the async compilation process crashes with SIGSEGV when compiling
> subr-x.el.
>
> Andrea, can you help me figure out the command line with which the
> async compilation subprocess is invoked in this case?  I'd like to run
> it as a foreground process under a debugger, and see why it crashes.

Yes, each async compilation runs executing a temporary (not to exceed
the max command line length on Windows) Elisp file.  This file is
created by `comp-run-async-workers'.

One can put a print there to have the name of this file (and execute it
regularly with emacs -batch -l ...) to have the reproducer or look into
the temporary directory for the most recent
emacs-async-comp-...something... file.

  Andrea

PS ATM I see a crash too in my 32bit wide-int setup here, this is while
executing a top_level_run function loading a .eln file.  I need to
compile a more recent gdb to look into this further but it looks
something basic is going wrong there.





reply via email to

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