This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/66123] Array of labels as values + ternary operator + pointer arithmetic = internal compiler error


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]