This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/66123] Array of labels as values + ternary operator + pointer arithmetic = internal compiler error
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 12 May 2015 12:58:40 +0000
- Subject: [Bug tree-optimization/66123] Array of labels as values + ternary operator + pointer arithmetic = internal compiler error
- Auto-submitted: auto-generated
- References: <bug-66123-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66123
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Or rather
Index: tree-ssa-dom.c
===================================================================
--- tree-ssa-dom.c (revision 223044)
+++ tree-ssa-dom.c (working copy)
@@ -2918,6 +2918,8 @@ propagate_rhs_into_lhs (gimple stmt, tre
{
basic_block bb = gimple_bb (use_stmt);
edge te = find_taken_edge (bb, val);
+ if (te)
+ {
edge_iterator ei;
edge e;
gimple_stmt_iterator gsi;
@@ -2961,6 +2963,7 @@ propagate_rhs_into_lhs (gimple stmt, tre
te->flags |= EDGE_FALLTHRU;
if (te->probability > REG_BR_PROB_BASE)
te->probability = REG_BR_PROB_BASE;
+ }
}
}
}
if computed goto removal should work.