emacs-devel
[Top][All Lists]
Advanced

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

Re: The emacs-28 release branch has been created


From: Andrea Corallo
Subject: Re: The emacs-28 release branch has been created
Date: Mon, 04 Oct 2021 19:38:43 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Andrea Corallo <akrl@sdf.org>
>> Cc: kbrown@cornell.edu, emacs-devel@gnu.org
>> Date: Mon, 04 Oct 2021 16:15:35 +0000
>> 
>> Okay I see what's the issue.  In `comp-final' we spawn a child process
>> to run the final pass or not discriminating on the `byte+native-compile'
>> var.  This is wrong cause this is not bound when using
>> `batch-native-compile'.
>> 
>> When spawning the sub-process we print the limple dump in a file and this
>> gets in this case truncated (still to be understood why) leading to the
>> error.
>> 
>> Will come with patch after dinner.
>
> Thanks.

Attached.  Ok for emacs-28?

> I'd appreciate if you could later describe how you debugged this
> problem and how did you arrive to the root cause.  We desperately need
> to become more proficient in debugging problems with
> native-compilation, and perhaps develop tools and techniques to
> support that.

Sure even tho in this case the process was not much sophisticated :)

- I reduced the reproducer searching manually by bissection in the file
  for the function causing the ICE

- Once identified the function I removed pieces of it to make it the
  smallest function still ICing the compiler

- I read carefully the stack trace of the compiler (after having posted
  it here :/ ) and saw that the reader error was not on file being
  compiled but on the file that we use to drive the native compilation
  happening in the subprocess (the one generated by `comp-final').

- I looked into one of these files and I saw clearly in the limple dump
  a constant vector that is truncated (not sure why maybe we have to
  bind some other print-something var in comp final?).

- Wondered why we are trying to spawn a child process for running the
  final pass if we are doing a batch compilation and found the issue
  reading the code.


Regards

  Andrea



reply via email to

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