mirror of git://gcc.gnu.org/git/gcc.git
re PR rtl-optimization/55270 (ICE in get_loop_body, at cfgloop.c:823)
2013-01-29 Richard Biener <rguenther@suse.de> PR tree-optimization/55270 * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed the CFG, schedule loops for fixup. * gcc.dg/torture/pr55270.c: New testcase. From-SVN: r195533
This commit is contained in:
parent
5893f1589a
commit
83ba4d6f2b
|
|
@ -1,3 +1,9 @@
|
||||||
|
2013-01-29 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/55270
|
||||||
|
* tree-ssa-dom.c (eliminate_degenerate_phis): If we changed
|
||||||
|
the CFG, schedule loops for fixup.
|
||||||
|
|
||||||
2013-01-29 Nick Clifton <nickc@redhat.com>
|
2013-01-29 Nick Clifton <nickc@redhat.com>
|
||||||
|
|
||||||
* config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
|
* config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,8 @@
|
||||||
|
2013-01-29 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/55270
|
||||||
|
* gcc.dg/torture/pr55270.c: New testcase.
|
||||||
|
|
||||||
2013-01-28 Jakub Jelinek <jakub@redhat.com>
|
2013-01-28 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
PR rtl-optimization/56117
|
PR rtl-optimization/56117
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
|
||||||
|
unsigned a, b, c;
|
||||||
|
|
||||||
|
void f(void)
|
||||||
|
{
|
||||||
|
for(; a; a++)
|
||||||
|
{
|
||||||
|
long *p1 = (long *)&b;
|
||||||
|
|
||||||
|
if(*p1)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if(b && (*p1 = b) || c && ++*p1)
|
||||||
|
{
|
||||||
|
unsigned *p2 = &b;
|
||||||
|
|
||||||
|
for(*p2 = 0; *p2 < 1;)
|
||||||
|
for(; b; b++);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -3006,7 +3006,12 @@ eliminate_degenerate_phis (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cfg_altered)
|
if (cfg_altered)
|
||||||
|
{
|
||||||
free_dominance_info (CDI_DOMINATORS);
|
free_dominance_info (CDI_DOMINATORS);
|
||||||
|
/* If we changed the CFG schedule loops for fixup by cfgcleanup. */
|
||||||
|
if (current_loops)
|
||||||
|
loops_state_set (LOOPS_NEED_FIXUP);
|
||||||
|
}
|
||||||
|
|
||||||
/* Propagation of const and copies may make some EH edges dead. Purge
|
/* Propagation of const and copies may make some EH edges dead. Purge
|
||||||
such edges from the CFG as needed. */
|
such edges from the CFG as needed. */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue