This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: 3.1 Bootstrap failure on sparc-solaris2.8
- To: Roman Lechtchinsky <rl at cs dot tu-berlin dot de>
- Subject: Re: 3.1 Bootstrap failure on sparc-solaris2.8
- From: Jeffrey Oldham <oldham at codesourcery dot com>
- Date: Thu, 5 Jul 2001 12:57:15 -0700
- Cc: Brad Lucier <lucier at math dot purdue dot edu>, gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org, mark at codesourcery dot com, rth at redhat dot com
- Organization: CodeSourcery LLC
- References: <Pine.SOL.4.10.10107051005240.17132-100000@sossusvlei>
This appears to be very similar to the problem I reported 03 July
(http://gcc.gnu.org/ml/gcc-patches/2001-07/msg00189.html). For me,
the problem was solved by reverting gcc/flow.c from version 1.412 to
1.411.
Jan Hubicka, who introduced the patch, declined to fix the problem
until after 07Jul
(http://gcc.gnu.org/ml/gcc-patches/2001-07/msg00270.html). I suggest
we revert the patch until it is correct, but I await higher authority
for approval.
Thanks,
Jeffrey D. Oldham
oldham@codesourcery.com
On Thu, Jul 05, 2001 at 10:16:01AM +0200, Roman Lechtchinsky wrote:
> > > > The error is
> > > >
> > > > __GCC_FLOAT_NOT_NEEDED -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/config -I../../gcc/../include -DL_floatdisf -c ../../gcc/libgcc2.c -o libgcc/./_floatdisf.o
> > > > ../../gcc/libgcc2.c: In function `__floatdisf':
> > > > ../../gcc/libgcc2.c:1129: Internal compiler error in subreg_highpart_offset, at emit-rtl.c:1180
> > >
> > > See http://gcc.gnu.org/ml/gcc-patches/2001-06/msg01619.html which fixes
> > > this and still hasn't been reviewed (just a shameless plug :-).
> >
> > This patch no longer applies cleanly to the 3.1 tree; perhaps you
> > can update it and resubmit it. My understanding is that patches
> > that fix bootstrap failures are given higher priority recently.
>
> I have updated the patch but unfortunately I can't test it because make
> bootstrap now aborts with
>
> ./xgcc -B./ -B/usr/local/sparc-sun-solaris2.7/bin/ -isystem
> /usr/local/sparc-sun-solaris2.7/include -O2 -DIN_GCC -W -Wall
> -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem
> ./include -fPIC -g1 -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
> -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../../cvs/gcc/gcc
> -I../../../cvs/gcc/gcc/. -I../../../cvs/gcc/gcc/config
> -I../../../cvs/gcc/gcc/../include -DL_clear_cache -c
> ../../../cvs/gcc/gcc/libgcc2.c -o libgcc/./_clear_cache.o
> cc1: warning: changing search order for system directory "include"
> cc1: warning: as it has already been specified as a system directory
> ../../../cvs/gcc/gcc/libgcc2.c: In function `__clear_cache':
> ../../../cvs/gcc/gcc/libgcc2.c:2467: Virtual array basic_block_info[1]:
> element 1 out of bounds
> ../../../cvs/gcc/gcc/libgcc2.c:2467: confused by earlier errors, bailing
> out
>
> The problem is caused by this line in try_optimize_cfg:
>
> c = BASIC_BLOCK (i ? i - 1 : i + 1);
>
> This doesn't work because there is only one basic block so i+1 is out of
> bounds. I'll try to understand what's going on here if I have the time
> which is not too probable :-(
>
> Bye
>
> Roman