[Bug target/34150] ICE: output_operand: invalid expression as operand on hppa

danglin at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Jan 6 21:46:00 GMT 2008



------- Comment #3 from danglin at gcc dot gnu dot org  2008-01-06 21:35 -------
This bug is present on 4.2 branch but head doesn't fail for me.  The problem
is a deleted label.

Breakpoint 1, output_operand (x=0x4be5a208, code=0)
    at ../../gcc/gcc/final.c:3171
3171      gcc_assert (!x || !REG_P (x) || REGNO (x) < FIRST_PSEUDO_REGISTER);
(gdb) p debug_rtx (x)
(note/s 1897 4221 1898 ("*.LJpc=819954") NOTE_INSN_DELETED_LABEL 13722)
$1 = void
(gdb) bt
#0  output_operand (x=0x4be5a208, code=0) at ../../gcc/gcc/final.c:3171
#1  0x0013dc10 in output_asm_insn (template=<value optimized out>,
    operands=0x460ba0) at ../../gcc/gcc/final.c:3102
#2  0x0013e914 in final_scan_insn (insn=0x4bd755a0,
    file=<value optimized out>, optimize=<value optimized out>,
    nopeepholes=<value optimized out>, seen=0xfafc2d48)
    at ../../gcc/gcc/final.c:2468
#3  0x0013eab4 in final_scan_insn (insn=0x4bf32cd0, file=0x48c670,
    optimize=<value optimized out>, nopeepholes=<value optimized out>,
    seen=0xfafc2d48) at ../../gcc/gcc/final.c:2143
#4  0x0013ed48 in final (first=<value optimized out>, file=0x48c670,
    optimize=2) at ../../gcc/gcc/final.c:1610
#5  0x0013ee48 in rest_of_handle_final () at ../../gcc/gcc/final.c:3916
#6  0x002404b0 in execute_one_pass (pass=0x43924c)
    at ../../gcc/gcc/passes.c:881
#7  0x00240630 in execute_pass_list (pass=0x43924c)
    at ../../gcc/gcc/passes.c:932
#8  0x00240644 in execute_pass_list (pass=0x439e58)
    at ../../gcc/gcc/passes.c:933
#9  0x00240644 in execute_pass_list (pass=0x439e24)
    at ../../gcc/gcc/passes.c:933
#10 0x00077834 in tree_rest_of_compilation (fndecl=0x49d9de00)
    at ../../gcc/gcc/tree-optimize.c:462
---Type <return> to continue, or q <return> to quit---q
Quit
(gdb) frame 2
#2  0x0013e914 in final_scan_insn (insn=0x4bd755a0,
    file=<value optimized out>, optimize=<value optimized out>,
    nopeepholes=<value optimized out>, seen=0xfafc2d48)
    at ../../gcc/gcc/final.c:2468
2468            output_asm_insn (template, recog_data.operand);
(gdb) p debug_rtx (insn)
(jump_insn:TI 1452 1450 1455 (set (pc)
        (if_then_else (eq (reg:SI 28 %r28 [orig:1024+-3 ] [1024])
                (const_int 0 [0x0]))
            (label_ref [1897 deleted])
            (pc))) 25 {*pa.md:1712} (nil)
    (expr_list:REG_BR_PRED (const_int 50 [0x32])
        (expr_list:REG_DEAD (reg:SI 28 %r28 [orig:1024+-3 ] [1024])
            (expr_list:REG_BR_PROB (const_int 200 [0xc8])
                (nil)))))


-- 

danglin at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-01-06 21:35:49
               date|                            |


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



More information about the Gcc-bugs mailing list