This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: more hpux fun (ICE building libgcc2.c in __fixunsdfdi)
- To: gcc-bugs at gcc dot gnu dot org
- Subject: Re: more hpux fun (ICE building libgcc2.c in __fixunsdfdi)
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Thu, 18 Jan 2001 01:38:11 -0500 (EST)
- Cc: jbuck at racerx dot synopsys dot com, law at redhat dot com
> Still can't bootstrap hppa2.0-hp-hpux10.20.
>
> We get further than before (the duplicate-include problem is gone),
> but still bomb early in stage 2. The latest failure is
>
> ./xgcc -B./ -B/u/jbuck/cvs-gcc-hp/hppa2.0-hp-hpux10.20/bin/ -isystem \
> /u/jbuck/cvs-gcc-hp/hppa2.0-hp-hpux10.20/include -O2 -DIN_GCC \
> -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
> -isystem ./include -fPIC -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED \
> -I. -I. -I/u/jbuck/gnu/src/cvs/gcc/gcc -I/u/jbuck/gnu/src/cvs/gcc/gcc/. \
> -I/u/jbuck/gnu/src/cvs/gcc/gcc/config \
> -I/u/jbuck/gnu/src/cvs/gcc/gcc/../include -DUSE_COLLECT2 -DL_fixunsdfdi \
> -c /u/jbuck/gnu/src/cvs/gcc/gcc/libgcc2.c -o libgcc/./_fixunsdfdi.o
> /u/jbuck/gnu/src/cvs/gcc/gcc/libgcc2.c: In function `__fixunsdfdi':
> /u/jbuck/gnu/src/cvs/gcc/gcc/libgcc2.c:949: Internal compiler error in propagate
> _one_insn, at flow.c:3790
This is caused by the insn which saves the pic offset table register in
the prologue being dead. It is a result of a lack of a use for the
register in the epilogue. This causes the insn which restores this
register after a function call to be deleted. When this happens, the
saving insn may become dead and cause the error.
I posted a patch to fix the problem here:
<http://gcc.gnu.org/ml/gcc-patches/2001-01/msg01482.html>. I believe
Jeff is also working on a solution. There are reasons why fixing the
problem is tricky and I think you will just have to hold on a bit until
the details are resolved and fully tested.
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)