sh-coff build error with gcc-3.5-20040704

Jim Wilson wilson@specifixinc.com
Thu Jul 15 02:41:00 GMT 2004


Nitin Shah wrote:
> gcc   -O2 -DCOFFPATCH -DIN_GCC -DCROSS_COMPILE  -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes  -fno-common   -DHAVE_CONFIG_H    -I. -I. -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/. -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/../include -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/../libcpp/include -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/../libbanshee/libcompat -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/../libbanshee -I/home/kpit/fsfsrc/downloads/gcc-3.5-20040704/gcc/../libbanshee/points-to  -c insn-emit.c \
>   -o insn-emit.o
> insn-emit.c:8249: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452

Sending mail to gcc-bugs isn't very useful, as we don't track bug 
reports mailed to the lists.  If you have a bug that you want someone 
else to fix, you are better off filing a bug report into bugzilla.  If 
you want help fixing it yourself, then the gcc list is OK.

This isn't a bug in gcc mainline.  This is a bug in the gcc on the host 
system, e.g. /usr/bin/gcc.  You didn't mention the host, but this is 
probably not our problem.  You could try getting an update from the 
system vendor, or you could try building your own gcc for the host and 
installing it somewhere like /usr/local/bin to use for gcc builds.

I have seen similar problems on an RHL 8 machine.  The sh.md file 
contains patterns for 64-bit instructions that only get emitted when 
configured for sh5.  The patterns contain assumptions that HOST_WIDE_INT 
is 64-bits, which is true if you have configured for a 64-bit target. 
However, the patterns always get emitted to the insn-emit.c file, even 
when you configure for a 32-bit target.  If you are building on a 32-bit 
host, then HOST_WIDE_INT is 32-bits, and you get all kinds of warnings 
for code that does shifts greater than 32-bits on HOST_WIDE_INT, which 
happens to be invalid code in this case.  This should be harmless, as 
the invalid code will never be executed.  However, the RHL8 compiler 
gets confused while compiling the invalid code, and ends up hitting an 
abort.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



More information about the Gcc-bugs mailing list