Commit 504c0e4f by Richard Henderson Committed by Richard Henderson

re PR tree-optimization/17051 (ICE: internal compiler error: verify_ssa…

re PR tree-optimization/17051 (ICE: internal compiler error: verify_ssa failed.for SSA_NAME: l_addr<D8610>_650)

        PR 17051
        * tree-sra.c (scalarize_use): Mark all v_defs for !is_output too.

From-SVN: r86158
parent 7fa53b44
2004-08-17 Richard Henderson <rth@redhat.com>
PR 17051
* tree-sra.c (scalarize_use): Mark all v_defs for !is_output too.
2004-08-17 DJ Delorie <dj@redhat.com> 2004-08-17 DJ Delorie <dj@redhat.com>
* doc/extend.texi: Document new xstormy16 attribute. * doc/extend.texi: Document new xstormy16 attribute.
......
/* PR 17051: SRA failed to rename the VOPS properly. */
struct A
{
char c, d;
};
void foo(struct A *p)
{
struct A a = *p;
if (p->c)
bar1(a);
else
{
if (p) bar2(a,a.c);
bar3(a.c);
}
}
...@@ -1780,11 +1780,9 @@ scalarize_use (struct sra_elt *elt, tree *expr_p, block_stmt_iterator *bsi, ...@@ -1780,11 +1780,9 @@ scalarize_use (struct sra_elt *elt, tree *expr_p, block_stmt_iterator *bsi,
generate_copy_inout (elt, is_output, generate_element_ref (elt), &list); generate_copy_inout (elt, is_output, generate_element_ref (elt), &list);
if (list == NULL) if (list == NULL)
return; return;
mark_all_v_defs (expr_first (list));
if (is_output) if (is_output)
{ sra_insert_after (bsi, list);
mark_all_v_defs (expr_first (list));
sra_insert_after (bsi, list);
}
else else
sra_insert_before (bsi, list); sra_insert_before (bsi, list);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment