This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
the mysery of gcc/go/parse.o different in stage2 and stage3 for 7.2.0
- From: Dennis Clarke <dclarke at blastwave dot org>
- To: "gcc-help at gcc dot gnu dot org" <gcc-help at gcc dot gnu dot org>
- Date: Tue, 22 Aug 2017 09:34:58 -0400
- Subject: the mysery of gcc/go/parse.o different in stage2 and stage3 for 7.2.0
- Authentication-results: sourceware.org; auth=none
After five attempts to bootstrap 7.20 on a Solaris 10 sparc server I
keep running into the same problem over and over. A bootstrap
comparison failure between stage2 and stage3. In my most recent attempt
there is a single file reported as being different : gcc/go/parse.o .
At first glance there appears to be only an 8 byte difference in the
size of the file but looking down through the various sections in the
ELF data for both files I see the same data represented in very similar
places but yet, slightly different. For example the ELF header offset
is 0x3b7cd0 in one of them and 0x3b7cd8 in the other. Is this a valid
functional difference at all? Perhaps a bug lay inside the linker which
created the actual object file? Looking at both files and the ELF data
between them I see the exact same data in both and yet in different
addresses :
stage 2 :
Section Header[44]: sh_name: .bss
sh_addr: 0 sh_flags: [ SHF_WRITE SHF_ALLOC ]
sh_size: 0x11 sh_type: [ SHT_NOBITS ]
sh_offset: 0x204458 sh_entsize: 0
sh_link: 0 sh_info: 0
sh_addralign: 0x4
stage 3 :
Section Header[44]: sh_name: .bss
sh_addr: 0 sh_flags: [ SHF_WRITE SHF_ALLOC ]
sh_size: 0x11 sh_type: [ SHT_NOBITS ]
sh_offset: 0x204450 sh_entsize: 0
sh_link: 0 sh_info: 0
sh_addralign: 0x4
That sort of difference lay between the two files in many many places.
Slightly different by 8 bytes again however nm tells me that the symbol
listing is identical between the two files. Perhaps there is no actual
"functional" difference between the files at all.
Dennis