This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
BUG: ICE in function reload_cse_simplify_operands on hppa1.1-hp-hpux10.20
- To: egcs-bugs at cygnus dot com
- Subject: BUG: ICE in function reload_cse_simplify_operands on hppa1.1-hp-hpux10.20
- From: Manfred Hollstein <manfred at s-direktnet dot de>
- Date: Fri, 26 Jun 1998 14:04:16 +0200 (MET DST)
- Reply-To: manfred at s-direktnet dot de, Manfred dot Hollstein at ks dot sel dot alcatel dot de
This happens while compiling libg++-2.8.1.1a.tar.gz on hppa1.1-hp-hpux10.20:
If libg++'s two source files src/Rational.cc and src/SmplHist.cc are
compiled with any optimization level higher than 0 (zero), cc1plus
prints:
../../egcs-19980625/gcc/reload1.c:8581: Internal compiler error in function reload_cse_simplify_operands
This behaviour is not new; the first time I reported this in my usual
egcs@cygnus reports was with egcs-2.91.25. See below for info from
within gdb. I could provide you with the Rational.ii file if
necessary (it's 116616 bytes long).
I'd appreciate, if this will be fixed for egcs-1.1.
manfred
(gdb) r Rational.ii -quiet -dumpbase Rational.cc -g -O9 -version -fno-implicit-templates -o Rational.s
Starting program: /local/manfred/work/GNU/egcs-19980625-hppa1.1-hp-hpux10.20/gcc/cc1plus Rational.ii -quiet -dumpbase Rational.cc -g -O9 -version -fno-implicit-templates -o Rational.s
warning: Unable to find __d_pid symbol in object file.
warning: Suggest linking with /usr/lib/end.o.
warning: GDB will be unable to track shl_load/shl_unload calls
Breakpoint 1 at 0x7af496e8
Breakpoint 2 at 0x7af528fc
GNU C++ version egcs-2.91.42 19980624 (gcc2 ss-980502 experimental) (hppa1.1-hp-hpux10.20) compiled by GNU C version egcs-2.91.42 19980624 (gcc2 ss-980502 experimental).
../../egcs-19980625/gcc/reload1.c:8581: Internal compiler error in function reload_cse_simplify_operands
Breakpoint 2, 0x7af528fc in ___exit ()
(gdb) bt
#0 0x7af528fc in ___exit ()
#1 0x233b4c in reload_cse_simplify_operands (insn=0x403982c0)
at ../../egcs-19980625/gcc/reload1.c:8581
#2 0x2324d8 in reload_cse_regs (first=0x59) at ../../egcs-19980625/gcc/reload1.c:8253
#3 0xee08c in rest_of_compilation (decl=0x402622d0)
at ../../egcs-19980625/gcc/toplev.c:3525
#4 0x5f9b0 in finish_function (lineno=181, call_poplevel=0, nested=0)
at ../../../egcs-19980625/gcc/cp/decl.c:12816
#5 0xa64fc in yyparse () at parse.y:586
#6 0xe9acc in compile_file (name=0x7b03a047 "Rational.ii")
at ../../egcs-19980625/gcc/toplev.c:2553
#7 0xf026c in main (argc=11, argv=0x7b03ab08, envp=0x6)
at ../../egcs-19980625/gcc/toplev.c:4405
(gdb) up
#1 0x233b4c in reload_cse_simplify_operands (insn=0x403982c0)
at ../../egcs-19980625/gcc/reload1.c:8581
8581 abort ();
(gdb) l
8576 return 0;
8577 insn_extract (insn);
8578
8579 /* Figure out which alternative currently matches. */
8580 if (! constrain_operands (insn_code_number, 1))
8581 abort ();
8582
8583 alternative_reject = (int *) alloca (n_alternatives * sizeof (int));
8584 alternative_nregs = (int *) alloca (n_alternatives * sizeof (int));
8585 alternative_order = (int *) alloca (n_alternatives * sizeof (int));
(gdb) p insn_code_number
$1 = 111
(gdb) p insn
$2 = (struct rtx_def *) 0x403982c0
(gdb) prl
(insn:HI 7 737 657 (set (mem:DF (plus:SI (reg:SI 31 %r31)
(const_int -32)))
(reg:DF 38 %fr7)) 111 {reload_outdf+1} (nil)
(expr_list:REG_DEAD (reg:DF 38 %fr7)
(expr_list:REG_EQUIV (mem:DF (plus:SI (reg:SI 3 %r3)
(const_int -48)))
(nil))))
(gdb)