[Bug tree-optimization/28935] [4.2 regression] Segfault in operand_equal_p with -ftree-vectorize -O3

rguenth at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Sep 2 16:44:00 GMT 2006



------- Comment #4 from rguenth at gcc dot gnu dot org  2006-09-02 16:44 -------
We're folding:

#55 0x08184f06 in fold_stmt (stmt_p=0xa7cacbfc) at
/home/richard/src/trunk/gcc/tree-ssa-ccp.c:2408
2408        result = fold (rhs);
(gdb) call debug_generic_expr (*stmt_p)
indexD.1531_315 = 0 != 0 ? 1 : 0
(gdb) down
#54 0x083c0823 in fold (expr=0xa7caf730) at
/home/richard/src/trunk/gcc/fold-const.c:11341
11341             tem = fold_ternary (code, type, op0, op1, op2);
(gdb) call debug_generic_expr (expr)
0 != 0 ? 1 : 0
(gdb) call debug_tree (expr)
 <cond_expr 0xa7caf730
    type <integer_type 0xa7bf9284 int sizes-gimplified public SI
        size <integer_cst 0xa7be73f0 constant invariant 32>
        unit size <integer_cst 0xa7be7180 constant invariant 4>
        align 32 symtab 0 alias set 3 precision 32 min <integer_cst 0xa7be73a8
-2147483648> max <integer_cst 0xa7be73c0 2147483647>
        pointer_to_this <pointer_type 0xa7bf9c38>>

    arg 0 <ne_expr 0xa7cc4774
        type <boolean_type 0xa7bf94ac _Bool public unsigned QI
            size <integer_cst 0xa7be71f8 constant invariant 8>
            unit size <integer_cst 0xa7be7210 constant invariant 1>
            align 8 symtab 0 alias set -1 precision 1 min <integer_cst
0xa7be75e8 0> max <integer_cst 0xa7be7618 1>>

        arg 0 <integer_cst 0xa7be7a20 constant invariant 0> arg 1 <integer_cst
0xa7be7a20 0>>
    arg 1 <integer_cst 0xa7be7a38 type <integer_type 0xa7bf9284 int> constant
invariant 1> arg 2 <integer_cst 0xa7be7a20 0>>

where the problem is (possibly) the unfolded condition.


-- 


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



More information about the Gcc-bugs mailing list