ICE in `instantiate_virtual_regs_1', at function.c:3637 (Current CVS)

Andreas Jaeger aj@suse.de
Sat Nov 20 00:08:00 GMT 1999


The current CVS version produces a number of new ICEs in the testsuite
(26 instead of 9 or 6).

One ICE occurs in gcc.c-torture/compile/980506-2.c:

gromit:/usr/src/build-cc/gcc:[1]$ /usr/src/build-cc/gcc/xgcc -B/usr/src/build-cc/gcc/ /usr/sr
c/cvs/gcc/gcc/testsuite/gcc.c-torture/compile/980506-2.c -w -O0 -c -o /usr/src/build-cc/gcc/testsuite/980506-2.o -v -save-temps
Reading specs from /usr/src/build-cc/gcc/specs
gcc version 2.96 19991119 (experimental)
 /usr/src/build-cc/gcc/cpp -lang-c -v -iprefix /usr/src/build-cc/gcc/../lib/gcc-lib/i686-pc-linux-gnu/2.96/ -isystem /usr/src/build-cc/gcc/include -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__ELF__ -Dunix -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__linux__ -D__unix -D__linux -Asystem(posix) -w -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__tune_pentiumpro__ /usr/src/cvs/gcc/gcc/testsuite/gcc.c-torture/compile/980506-2.c 980506-2.i
GNU CPP version 2.96 19991119 (experimental) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 /usr/src/build-cc/gcc/include
 /usr/local/include
 /opt/gcc-2.96/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../i686-pc-linux-gnu/include
 /opt/gcc-2.96/lib/gcc-lib/i686-pc-linux-gnu/2.96/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
 /opt/gcc-2.96/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../include/g++-3
End of omitted list.
 /usr/src/build-cc/gcc/cc1 980506-2.i -quiet -dumpbase 980506-2.c -O0 -w -version -o 980506-2.s
GNU C version 2.96 19991119 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 2.96 19991119 (experimental).
/usr/src/cvs/gcc/gcc/testsuite/gcc.c-torture/compile/980506-2.c: In function `__nextafterf':
/usr/src/cvs/gcc/gcc/testsuite/gcc.c-torture/compile/980506-2.c:87: Internal compiler error in `instantiate_virtual_regs_1', at function.c:3637
Please submit a full bug report.
See <URL: http://www.gnu.org/software/gcc/faq.html#bugreport > for instructions.

(gdb) bt
#0  fancy_abort (file=0x8209ad3 "../../cvs/gcc/gcc/function.c", line=3637, 
    function=0x8209cae "instantiate_virtual_regs_1") at ../../cvs/gcc/gcc/rtl.c:1253
#1  0x8067522 in instantiate_virtual_regs_1 (loc=0x4012bc84, object=0x40126c40, 
    extra_insns=1) at ../../cvs/gcc/gcc/function.c:3637
#2  0x8067571 in instantiate_virtual_regs_1 (loc=0x40127258, object=0x40126c40, 
    extra_insns=1) at ../../cvs/gcc/gcc/function.c:3659
#3  0x8066d4c in instantiate_virtual_regs (fndecl=0x40125600, insns=0x40126160)
    at ../../cvs/gcc/gcc/function.c:3279
#4  0x804bfaa in rest_of_compilation (decl=0x40125600) at ../../cvs/gcc/gcc/toplev.c:3770
#5  0x81f0fc4 in finish_function (nested=0) at ../../cvs/gcc/gcc/c-decl.c:6714
#6  0x81e1e5a in yyparse () at c-parse.y:350
#7  0x804b2a4 in compile_file (name=0x40122ac0 "980506-2.i")
    at ../../cvs/gcc/gcc/toplev.c:3213
#8  0x804e889 in main (argc=10, argv=0xbffff824) at ../../cvs/gcc/gcc/toplev.c:5576
(gdb) p debug_rtx (object)

(insn 51 277 53 (set (reg:SF 30)
        (plus:SF (mem/f:SF (reg:SI 19 virtual-incoming-args) 0)
            (mem/f:SF (plus:SI (reg:SI 19 virtual-incoming-args)
                    (const_int 4 [0x4])) 0))) -1 (nil)
    (nil))
$2 = void
(gdb) p debug_rtx (*loc)

(plus:SI (reg:SI 19 virtual-incoming-args)
    (const_int 4 [0x4]))
$3 = void
(gdb) p debug_rtx (seq)

(insn 277 49 51 (parallel[ 
            (set (reg:SI 66)
                (plus:SI (reg:SI 16 argp)
                    (const_int 4 [0x4])))
            (clobber (reg:CC 17 flags))
        ] ) -1 (nil)
    (nil))
$4 = void
(gdb) p debug_rtx (temp)

(reg:SI 66)
$5 = void

Further details available on request.  This is gcc CVS as of
1999-11-19 19:00 UTC on i686-linux with glibc 2.1.2.

Andreas
-- 
 Andreas Jaeger   
  SuSE Labs aj@suse.de	
   private aj@arthur.rhein-neckar.de


More information about the Gcc-bugs mailing list