https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127376
ktkachov at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ktkachov at gcc dot gnu.org
--- Comment #6 from ktkachov at gcc dot gnu.org ---
Asking an LLM to root cause this:
stage2-gmp/gmp.h:2334 #define __GMP_CC " ... -fno-checking"
stage3-gmp/gmp.h:2334 #define __GMP_CC " ... -fchecking=1"
The lines differ by one column, which is enough to change the map hashes
written for every object that reads gmp.h. Compiling mpfr/src/zeta.c
against the two headers, with everything else held fixed, gives
.gnu.lto_.decls.1 8304 bytes (stage 2 header)
.gnu.lto_.decls.1 8305 bytes (stage 3 header)
It suggests changing compute_map_hash in lto-streamer-out.cc to hash the
include point by the file and the line that it names instead.
I can submit a patch to do that if you agree