Compiling clisp with gcc 4 CVS fails with the following ICE.  This is a
regression from GCC 3.3.

$ gcc -fPIC -D_GNU_SOURCE  -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit
-Wreturn-type   -O -DUNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES -DNO_SIGSEGV -I. -c
spvw.c -save-temps -v
Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr
--with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man
--libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,f95,java,ada --enable-checking
--with-gxx-include-dir=/usr/include/c++/4.0.0 --with-slibdir=/lib64
--with-system-zlib --enable-shared --enable-__cxa_atexit
--without-system-libunwind --host=x86_64-suse-linux
Thread model: posix
gcc version 4.0.0 20050410 (prerelease) (SUSE Linux)
 /usr/lib64/gcc/x86_64-suse-linux/4.0.0/cc1 -E -quiet -v -I. -D_GNU_SOURCE
-DUNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES -DNO_SIGSEGV spvw.c -mtune=k8 -W
-Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -fPIC -O
-fpch-preprocess -o spvw.i
#include "..." search starts here:
#include <...> search starts here:
 .
 /usr/local/include
 /usr/lib64/gcc/x86_64-suse-linux/4.0.0/include
 /usr/lib64/gcc/x86_64-suse-linux/4.0.0/../../../../x86_64-suse-linux/include
 /usr/include
End of search list.
 /usr/lib64/gcc/x86_64-suse-linux/4.0.0/cc1 -fpreprocessed spvw.i -quiet
-dumpbase spvw.c -mtune=k8 -auxbase spvw -O -W -Wswitch -Wcomment
-Wpointer-arith -Wimplicit -Wreturn-type -version -fPIC -o spvw.s
GNU C version 4.0.0 20050410 (prerelease) (SUSE Linux) (x86_64-suse-linux)
        compiled by GNU C version 4.0.0 20050410 (prerelease) (SUSE Linux).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
In file included from spvw.d:25:
lispbibl.d:7430: warning: volatile register variables don’t work as you might 
wish
In file included from spvw.d:563:
spvw_typealloc.d: In function ‘allocate_vector’:
spvw_typealloc.d:94: error: unrecognizable insn:
(insn 93 92 88 4 (set (reg/f:DI 87)
        (plus:DI (reg:DI 91)
            (const_int 1125899906842624 [0x4000000000000]))) -1
(insn_list:REG_DEP_TRUE 92 (nil))
    (expr_list:REG_DEAD (reg:DI 91)
        (expr_list:REG_EQUAL (const:DI (plus:DI (symbol_ref:DI
("symbol_tab_data") [flags 0x40] <var_decl 0x2aaaab1cc750 symbol_tab_data>)
                    (const_int 1125899906842624 [0x4000000000000])))
            (nil))))
spvw_typealloc.d:94: internal compiler error: in extract_insn, at recog.c:2060
Please submit a full bug report,
with preprocessed source if appropriate.

-- 
           Summary: ICE: unrecognoizable insns
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: aj at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org,hubicka at gcc dot gnu
                    dot org,matz at suse dot de
 GCC build triplet: x86_64-linux-gnu
  GCC host triplet: x86_64-linux-gnu
GCC target triplet: x86_64-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20928

Reply via email to