------- Comment #5 from danglin at gcc dot gnu dot org 2010-07-28 15:00 ------- (In reply to comment #4) > While the ICE nominally results from a hash lookup failure, replacing > libiberty.a with the stage1 version makes no difference. Thus, it > doesn't appear that the problem is with the hash code.
This is wrong. Hash related failure is different bug. The backtrace for this ICE is: Program received signal SIGSEGV, Segmentation fault. commutative_operand_precedence (op=0x0) at ../../gcc/gcc/rtlanal.c:2914 2914 enum rtx_code code = GET_CODE (op); (gdb) bt #0 commutative_operand_precedence (op=0x0) at ../../gcc/gcc/rtlanal.c:2914 #1 0x003b135c in swap_commutative_operands_p (x=<value optimized out>, y=0x0) at ../../gcc/gcc/rtlanal.c:2980 #2 0x003ee244 in simplify_const_relational_operation (code=NE, mode=SImode, op0=0x400122b8, op1=0x0) at ../../gcc/gcc/simplify-rtx.c:4256 #3 0x003e4ee0 in simplify_relational_operation (code=NE, mode=SImode, cmp_mode=SImode, op0=0x400122b8, op1=0x0) at ../../gcc/gcc/simplify-rtx.c:3904 #4 0x003e565c in simplify_gen_relational (code=NE, mode=VOIDmode, cmp_mode=<value optimized out>, op0=0x400122b8, op1=0x0) at ../../gcc/gcc/simplify-rtx.c:346 #5 0x00317ec4 in iv_number_of_iterations (loop=0x7, desc=0x9b62d8) at ../../gcc/gcc/loop-iv.c:2609 #6 check_simple_exit (loop=0x7, desc=0x9b62d8) at ../../gcc/gcc/loop-iv.c:2847 #7 find_simple_exit (loop=0x7, desc=0x9b62d8) at ../../gcc/gcc/loop-iv.c:2872 (gdb) p/x $pc $2 = 0x3b11d8 (gdb) disass 0x3b11c8,0x3b11e8 Dump of assembler code from 0x3b11c8 to 0x3b11e8: 0x003b11c8 <regno_use_in+276>: ldo -4(r7),r7 0x003b11cc <regno_use_in+280>: b,l 0x3b10f8 <regno_use_in+68>,r0 0x003b11d0 <regno_use_in+284>: ldi 0,ret0 0x003b11d4 <commutative_operand_precedence+0>: stw rp,-14(sp) => 0x003b11d8 <commutative_operand_precedence+4>: ldh 0(r26),r19 0x003b11dc <commutative_operand_precedence+8>: ldo 40(sp),sp 0x003b11e0 <commutative_operand_precedence+12>: ldi 1e,r20 0x003b11e4 <commutative_operand_precedence+16>: cmpb,<> r20,r19,0x3b11f8 <commutative_operand_precedence+36> End of assembler dump. (gdb) p/x $r26 $3 = 0x0 ICE also seen on hppa2.0w-hp-hpux11.11. -- danglin at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bernds at gcc dot gnu dot | |org GCC build triplet|hppa-unknown-linux-gnu |hppa*-*-* (32-bit) GCC host triplet|hppa-unknown-linux-gnu |hppa*-*-* (32-bit) GCC target triplet|hppa-unknown-linux-gnu |hppa*-*-* (32-bit) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45063