mirror of git://gcc.gnu.org/git/gcc.git
re PR middle-end/52045 (ICE: in execute_todo, at passes.c:1748 with -O3 -ftracer -fno-tree-ccp -fno-tree-copy-prop -fno-tree-dce and stpcpy_chk())
2012-01-30 Richard Guenther <rguenther@suse.de> PR tree-optimization/52045 * tree-optimize.c (execute_cleanup_cfg_post_optimizing): Update SSA form if cfgcleanup did anything. * gcc.dg/pr52045.c: New testcase. From-SVN: r183722
This commit is contained in:
parent
f8698b375a
commit
ab448cfa68
|
@ -1,3 +1,9 @@
|
||||||
|
2012-01-30 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/52045
|
||||||
|
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Update
|
||||||
|
SSA form if cfgcleanup did anything.
|
||||||
|
|
||||||
2012-01-30 Richard Guenther <rguenther@suse.de>
|
2012-01-30 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
PR tree-optimization/52045
|
PR tree-optimization/52045
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2012-01-30 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/52045
|
||||||
|
* gcc.dg/pr52045.c: New testcase.
|
||||||
|
|
||||||
2012-01-30 Greta Yorsh <Greta.Yorsh@arm.com>
|
2012-01-30 Greta Yorsh <Greta.Yorsh@arm.com>
|
||||||
|
|
||||||
* gcc.target/arm/di-longlong64-sync-withldrexd.c: Accept
|
* gcc.target/arm/di-longlong64-sync-withldrexd.c: Accept
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-options "-O3 -ftracer -fno-tree-ccp -fno-tree-copy-prop -fno-tree-dce" } */
|
||||||
|
|
||||||
|
char *vx;
|
||||||
|
char buf[20];
|
||||||
|
|
||||||
|
void
|
||||||
|
foo (void)
|
||||||
|
{
|
||||||
|
vx = __builtin___stpcpy_chk (buf, vx ? "gh" : "e", sizeof(buf));
|
||||||
|
}
|
|
@ -157,7 +157,9 @@ struct gimple_opt_pass pass_all_early_optimizations =
|
||||||
static unsigned int
|
static unsigned int
|
||||||
execute_cleanup_cfg_post_optimizing (void)
|
execute_cleanup_cfg_post_optimizing (void)
|
||||||
{
|
{
|
||||||
cleanup_tree_cfg ();
|
unsigned int todo = 0;
|
||||||
|
if (cleanup_tree_cfg ())
|
||||||
|
todo |= TODO_update_ssa;
|
||||||
maybe_remove_unreachable_handlers ();
|
maybe_remove_unreachable_handlers ();
|
||||||
cleanup_dead_labels ();
|
cleanup_dead_labels ();
|
||||||
group_case_labels ();
|
group_case_labels ();
|
||||||
|
@ -190,7 +192,7 @@ execute_cleanup_cfg_post_optimizing (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return todo;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct gimple_opt_pass pass_cleanup_cfg_post_optimizing =
|
struct gimple_opt_pass pass_cleanup_cfg_post_optimizing =
|
||||||
|
|
Loading…
Reference in New Issue