BUG: CVS egcs-19980608 fails to bootstrap on hppa1.1-hp-hpux10.20
Manfred Hollstein
manfred@s-direktnet.de
Mon Jun 8 23:51:00 GMT 1998
Sources: - egcs from CVS last updated at 1998/06/08 13:25:45 MEST
- libg++-2.8.1.1a
Patches: None.
Environment: - GNU binutils 2.9.1
- dejagnu-971028
- gperf-2.7
configure flags: --host=hppa1.1-hp-hpux10.20 --srcdir=../egcs-19980608 --prefix=/u/b60/manfred/gnu/hppa1.1-hp-hpux10.20 --with-gnu-as --with-gxx-include-dir='/u/b60/manfred/gnu/hppa1.1-hp-hpux10.20/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.91.35/include/g++' --with-local-prefix=/u/b60/manfred/gnu/hppa1.1-hp-hpux10.20 --verbose --norecursion
BOOT_CFLAGS: -O9 -funroll-all-loops -g -DUSE_GAS
BOOT_CC: gcc version 2.8.1
This happens when the just built stage2 compiler tries to build libgcc2.a:
_divdi3
../../egcs-19980608/gcc/haifa-sched.c:7593: Internal compiler error in function schedule_region
A quick look in gdb shows:
(gdb) r libgcc2.i -quiet -dumpbase libgcc2.c -g -g1 -O2 -O9 -W -Wall -version -funroll-all-loops -fPIC -fexceptions -o libgcc2.s
Starting program: /local/manfred/work/GNU/egcs-19980608-hppa1.1-hp-hpux10.20/gcc/cc1 libgcc2.i -quiet -dumpbase libgcc2.c -g -g1 -O2 -O9 -W -Wall -version -funroll-all-loops -fPIC -fexceptions -o libgcc2.s
warning: Unable to find __d_pid symbol in object file.
warning: Suggest linking with /usr/lib/end.o.
warning: GDB will be unable to track shl_load/shl_unload calls
Breakpoint 1 at 0x7af496e8
Breakpoint 2 at 0x7af528fc
GNU C version egcs-2.91.35 19980608 (gcc2 ss-980502 experimental) (hppa1.1-hp-hpux10.20) compiled by GNU C version egcs-2.91.35 19980608 (gcc2 ss-980502 experimental).
../../egcs-19980608/gcc/haifa-sched.c:7593: Internal compiler error in function schedule_region
Breakpoint 2, 0x7af528fc in ___exit ()
(gdb) up
#1 0x1d3844 in schedule_region (rgn=1) at ../../egcs-19980608/gcc/haifa-sched.c:7593
7593 abort ();
(gdb) l
7588 /* Sanity check. There should be no REG_DEAD notes leftover at the end.
7589 In practice, this can occur as the result of bugs in flow, combine.c,
7590 and/or sched.c. The values of the REG_DEAD notes remaining are
7591 meaningless, because dead_notes is just used as a free list. */
7592 if (dead_notes != 0)
7593 abort ();
7594 }
7595
7596 /* restore line notes. */
7597 if (write_symbols != NO_DEBUG)
(gdb) p lineno
$1 = 680
(gdb) p dead_notes
$2 = (struct rtx_def *) 0x400f6be0
(gdb) pr
(expr_list:REG_DEAD (reg/v:DI 102)
(expr_list:REG_DEAD (reg:SI 103)
(expr_list:REG_DEAD (reg/v:DI 96)
(nil))))
(gdb)
manfred
More information about the Gcc-bugs
mailing list