This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: GCC CVS mainline does not build on i686-linux (rtlcheck failure)
- From: Graham Stott <graham dot stott at btinternet dot com>
- To: Andreas Jaeger <aj at suse dot de>
- Cc: gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Sat, 12 Oct 2002 15:46:46 +0100
- Subject: Re: GCC CVS mainline does not build on i686-linux (rtlcheck failure)
- References: <u84rbrdbcv.fsf@gromit.moeb>
Andreas Jaeger wrote:
End of search list.
/builds/gcc/gcc-3.3-devel/gcc/cc1 -fpreprocessed z_log.i -quiet -dumpbase z_log.c -auxbase-strip .libs/z_log.o -g -O2 -O2 -W -Wall -version -ffloat-store -fPIC -o z_log.s
GNU C version 3.3 20021012 (experimental) (i686-pc-linux-gnu)
compiled by GNU C version 3.3 20021012 (experimental).
/usr/include/bits/mathinline.h: In function `z_log':
/usr/include/bits/mathinline.h:425: internal compiler error: RTL check: expected code `reg', have `mem' in decl_conflicts_with_clobbers_p, at stmt.c:1417
Please submit a full bug report,
Andreas
Try the following patch It survives a complete x86 bootstrap
all languages (inc, Ada) with no regressions.
Cheers
Graham
ChangeLog
* decl_conflicts_with_clobbers_p (): Add REP_P check.
------------------------------------------------------------------
Index: stmt.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/stmt.c,v
retrieving revision 1.271
diff -c -p -r1.271 stmt.c
*** stmt.c 27 Sep 2002 12:48:03 -0000 1.271
--- stmt.c 12 Oct 2002 14:47:25 -0000
*************** decl_conflicts_with_clobbers_p (decl, cl
*** 1414,1419 ****
--- 1414,1420 ----
list are not allowed. */
if ((TREE_CODE (decl) == VAR_DECL || TREE_CODE (decl) == PARM_DECL)
&& DECL_REGISTER (decl)
+ && REG_P (DECL_RTL (decl))
&& REGNO (DECL_RTL (decl)) < FIRST_PSEUDO_REGISTER)
{
rtx reg = DECL_RTL (decl);
------------------------------------------------------------------------