diff options
author | Richard Guenther <rguenther@suse.de> | 2012-01-30 13:39:12 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-01-30 13:39:12 +0000 |
commit | f8698b375afc829d817ba3fc3ab38929479a7222 (patch) | |
tree | ad46264783fe7ef571a3621cb78500bdd66ab788 /gcc | |
parent | fdad69c13646f9797333ccdefd0bf14106595631 (diff) | |
download | gcc-f8698b375afc829d817ba3fc3ab38929479a7222.zip gcc-f8698b375afc829d817ba3fc3ab38929479a7222.tar.gz gcc-f8698b375afc829d817ba3fc3ab38929479a7222.tar.bz2 |
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
* ipa-inline-transform.c (inline_transform): Call execute_fixup_cfg
before computing final todo.
From-SVN: r183721
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ipa-inline-transform.c | 8 |
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1d0b459..9414b24 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2012-01-30 Richard Guenther <rguenther@suse.de> + PR tree-optimization/52045 + * ipa-inline-transform.c (inline_transform): Call execute_fixup_cfg + before computing final todo. + +2012-01-30 Richard Guenther <rguenther@suse.de> + PR tree-optimization/51528 * tree-sra.c (sra_modify_assign): Re-factor in preparation for PR51528 fix. diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c index 8196a13..75b8e9d 100644 --- a/gcc/ipa-inline-transform.c +++ b/gcc/ipa-inline-transform.c @@ -369,11 +369,13 @@ inline_transform (struct cgraph_node *node) todo = optimize_inline_calls (current_function_decl); timevar_pop (TV_INTEGRATION); + cfun->always_inline_functions_inlined = true; + cfun->after_inlining = true; + todo |= execute_fixup_cfg (); + if (!(todo & TODO_update_ssa_any)) /* Redirecting edges might lead to a need for vops to be recomputed. */ todo |= TODO_update_ssa_only_virtuals; - cfun->always_inline_functions_inlined = true; - cfun->after_inlining = true; - return todo | execute_fixup_cfg (); + return todo; } |