Subject: Re: bug#63365: 30.0.50; GCC 13.1 breaks building Emacs with native-compilation

From: Eli Zaretskii <[email-masked]>
Date: Thu, 29 Jun 2023 08:20:36 +0300

> From: Cyril Arnould <[email-masked]>
> CC: "[email-masked]" <[email-masked]>
> Date: Wed, 28 Jun 2023 23:16:58 +0000
> 
> Ok, I think I got it; it's src/thread.c. The following build succeeds:
> 
> git clean -xdf
> git checkout emacs-29.0.92
> ./autogen.sh
> ./configure --with-native-compilation
> cd src
> make temacs.exe
> make thread.o -W thread.c CFLAGS='-g3 -O2 -gdwarf-2 -fno-optimize-sibling-calls'
> cd ..
> make

OK, so I guess the next step is to compare the code produced from
thread.c between these two compilations.  Like this:

  cd src
  objdump -d -S thread-with.o > with.txt
  objdump -d -S thread-without.o > without.txt
  diff -ubBw with.txt without.txt

where the two *.o files are thread.o you get when compiling,
respectively, with and without -fno-optimize-sibling-calls option.

Then post here the two *.txt files and the diffs, and let's see where
this leads us.  (I hope the two *.txt files will not be identical...)

Thanks.