This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c/942: sparc Solaris 2.6 gcc 2.95.2 exits with "unrecognizable insn" ice for legal code
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c/942: sparc Solaris 2.6 gcc 2.95.2 exits with "unrecognizable insn" ice for legal code
- From: Georgi Kuzmanov <georgi at cs dot man dot ac dot uk>
- Date: 30 Nov 2000 16:07:53 -0000
- Cc: Richard Henderson <rth at cygnus dot com>, David S.Miller <davem at redhat dot com>
- Reply-To: Georgi Kuzmanov <georgi at cs dot man dot ac dot uk>
>Number: 942
>Category: c
>Synopsis: sparc Solaris 2.6 gcc 2.95.2 exits with "unrecognizable insn" ice for legal code
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Thu Nov 30 08:16:01 PST 2000
>Closed-Date:
>Last-Modified:
>Originator: Georgi Kuzmanov
>Release: gcc version 2.95.2 19991024 (release)
>Organization:
>Environment:
SunOS 5.6 Generic_105181-20 sun4m sparc SUNW,SPARCstation-20
cpu0: TI,TMS390Z50 (mid 8 impl 0x0 ver 0x3 clock 50 MHz)
>Description:
GCC 2.95.2 running as a native compiler on sun4m sparc under
Solaris 2.6 exits with ICE compiling legal code (pine4.30/imap/src/osdep/unix/mbx.c
from UW PINE 4.30). The same code compiles and links to a
working executable using native sparc Solaris 2.6 gcc 2.8.1
but fails for gcc 2.95.1 as well. The error occurs at all
levels of optimization from -O0 to -O6 (incl.); gcc 2.8.1
compiles the source successfully at all levels of optimization
(from -O0 to -O6 incl.).
The gcc 2.95.2 binaries were compiled on the same machine
using gcc 2.95.1 for the original bootstrap ("make bootstrap-lean").
The sources were checked out from the public CVS repository at gnu.org using tag gcc-2_95_2-release:
cvs -z 9 -d :pserver:anoncvs@gcc.gnu.org:/cvs/gcc co -r gcc-2_95_2-release -P gcc
Could not attach the preprocessed source due to a bug in the
gnatsweb form...
The erroneous run produced the output included below:
Reading specs from local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2
/specs
gcc version 2.95.2 19991024 (release)
local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/cpp -lang-c -v -D
__GNUC__=2 -D__GNUC_MINOR__=95 -Dsparc -Dsun -Dunix -D__svr4__ -D__SVR4 -D__spar
c__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem
(unix) -Asystem(svr4) -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) mbx.c
mbx.i
GNU CPP version 2.95.2 19991024 (release) (sparc)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../sparc
-sun-solaris2.6/include
local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/include
/usr/include
End of search list.
The following default directories have been omitted from the search path:
local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3
End of omitted list.
local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/cc1 mbx.i -quiet
-dumpbase mbx.c -version -o mbx.s
GNU C version 2.95.2 19991024 (release) (sparc-sun-solaris2.6) compiled by GNU C
version 2.95.2 19991024 (release).
mbx.c: In function `mbx_hdrpos':
mbx.c:1371: internal error--unrecognizable insn:
(insn 102 100 104 (set (reg:SI 130)
(minus:SI (const_int 4 [0x4])
(const_int -4096 [0xfffff000]))) -1 (nil)
(nil))
>How-To-Repeat:
Use the preprocessed source attached to the message.
>Fix:
Unknown, but apparently the error was introduced around 2.95;
2.8.1 could be used for sources that are affected by the error
>Release-Note:
>Audit-Trail:
>Unformatted: