ICE in verify_flow_info () at ../../gcc/gcc/cfgrtl.c:1761
John David Anglin
dave@hiauly1.hia.nrc.ca
Tue Apr 2 11:29:00 GMT 2002
On the trunk, the following ICE occurs on hppa2.0w-hp-hpux11.X and hppa-linux:
Executing on host: /xxx/gnu/gcc-3.2/objdir/gcc/xgcc -B/xxx/gnu/gcc-3.2/objdir/gcc/ -w -O1 -c -o /xxx/gnu/gcc-3.2/objdir/gcc/testsuite/20000504-1.o /xxx/gnu/gcc-3.2/gcc/gcc/testsuite/gcc.c-torture/compile/20000504-1.c (timeout = 300)
/xxx/gnu/gcc-3.2/gcc/gcc/testsuite/gcc.c-torture/compile/20000504-1.c: In function `func':
/xxx/gnu/gcc-3.2/gcc/gcc/testsuite/gcc.c-torture/compile/20000504-1.c:15: internal error: Segmentation fault
The ICE happens because EDGE_FALLTHRU is set and (bb)->succ->succ_next is 0:
(gdb) p *(bb)->succ
$13 = {pred_next = 0x0, succ_next = 0x0, src = 0x558c00, dest = 0x558c90,
insns = 0x0, aux = 0x0, flags = 1, probability = 10000, count = 0}
I think the ICE is caused by an empty basic block that arises during combine:
;; Start of basic block 1, registers live: 30 [%r30] 95 96
(note 56 15 21 [bb 1] NOTE_INSN_BASIC_BLOCK)
(insn 21 56 23 (set (mem/s/j:SI (reg/v/f:SI 26 %r26 [95]) [0 <variable>.a+0 S4 A32])
(reg/v:SI 25 %r25 [96])) 68 {*pa.md:2088} (nil)
(nil))
(note 23 21 25 NOTE_INSN_DELETED)
(jump_insn 25 23 57 (parallel[
(set (pc)
(if_then_else (lt (reg/v:SI 25 %r25 [96])
(const_int 0 [0x0]))
(label_ref 29)
(pc)))
(set (reg/v:SI 28 %r28 [98])
(reg/v:SI 25 %r25 [96]))
] ) 300 {*pa.md:6668} (nil)
(expr_list:REG_BR_PROB (const_int 2100 [0x834])
(nil)))
;; End of basic block 1, registers live:
3 [%r3] 30 [%r30] 95 98
;; Start of basic block 2, registers live: 30 [%r30] 95 98
(note 57 25 29 [bb 2] NOTE_INSN_BASIC_BLOCK)
;; End of basic block 2, registers live:
3 [%r3] 30 [%r30] 98
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)
More information about the Gcc-bugs
mailing list