following testcase ICEs with >= -O2 for a few days now:

=== Cut ===
extern int *__errno_location (void) throw () __attribute__ ((__const__));

typedef union {
    double d;
    unsigned L[2];
} U;

void kjs_strtod()
{
    int   rv,    e1;
    unsigned  z;
    if (e1 > 308) {  ovfl:  (*__errno_location ()) = 34;  }
    ((U*)&rv)->d *= 1e16;
    if ((z = ((U*)&rv)->L[1] & 0x7ff00000)     > 0x100000)
        goto ovfl;
}
=== Cut===

#1  0x081f2e1b in add_virtual_operand (var=<value optimized out>, s_ann=<value
optimized out>, 
    flags=<value optimized out>, full_ref=0xb7d22140, offset=0, size=64,
for_clobber=0 '\0')
    at tree-ssa-operands.c:979
#2  0x081f7ecb in get_indirect_ref_operands (stmt=0xb7d1b1d4, expr=0xb7d95b00,
flags=1, 
    full_ref=0xb7d22140, offset=0, size=64, recurse_on_base=0 '\0') at
tree-ssa-operands.c:1116
#3  0x081f4105 in get_expr_operands (stmt=0xb7d1b1d4, expr_p=0xb7d1b1f0,
flags=3)
    at tree-ssa-operands.c:1617
#4  0x081f5380 in parse_ssa_operands (stmt=0xb7d1b1d4) at
tree-ssa-operands.c:1763
#5  0x081f5be4 in build_ssa_operands (stmt=0xb7d1b1d4) at
tree-ssa-operands.c:1825
#6  0x081f6ec1 in update_stmt_operands (stmt=0xb7d1b1d4) at
tree-ssa-operands.c:1867
#7  0x081b5569 in mark_new_vars_to_rename (stmt=0xb7d1b1d4) at
tree-flow-inline.h:280
#8  0x08246a56 in substitute_and_fold (prop_value=0x87cf580, use_ranges_p=0
'\0')
    at tree-ssa-propagate.c:1154
#9  0x081ef1be in execute_copy_prop (store_copy_prop=<value optimized out>, 
    phis_only=<value optimized out>) at tree-ssa-copy.c:914
#10 0x081ef34f in do_copy_prop () at tree-ssa-copy.c:1048
#11 0x085023fb in execute_one_pass (pass=0x86f8040) at passes.c:863
#12 0x085025a7 in execute_pass_list (pass=0x86f8040) at passes.c:910
#13 0x085025ba in execute_pass_list (pass=0x86f7d40) at passes.c:911
#14 0x081bf996 in tree_rest_of_compilation (fndecl=0xb7dcbc80) at
tree-optimize.c:418
#15 0x0812a906 in expand_body (fn=0xb7dcbc80) at semantics.c:3009
#16 0x085512b5 in cgraph_expand_function (node=0xb7dcbd00) at cgraphunit.c:1102
#17 0x08553d1b in cgraph_optimize () at cgraphunit.c:1167
#18 0x080d3cf5 in cp_finish_file () at decl2.c:3110
#19 0x0819106f in c_common_parse_file (set_yydebug=0) at c-opts.c:1166
#20 0x084ce803 in toplev_main (argc=14, argv=0xbfae7bb4) at toplev.c:999
#21 0x0819e1b2 in main (argc=0, argv=0xb7dcd508) at main.c:35


-- 
           Summary: ICE in in add_virtual_operand
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mueller at gcc dot gnu dot org


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

Reply via email to