diff options
author | Michael Matz <matz@suse.de> | 2012-01-26 15:50:33 +0000 |
---|---|---|
committer | Michael Matz <matz@gcc.gnu.org> | 2012-01-26 15:50:33 +0000 |
commit | 81bfd1977ac6a45d790a48603e38d335eb0a8a36 (patch) | |
tree | 808bb0980b8187c2584ca18d2cc1712638bdbd79 /gcc/gimplify.c | |
parent | bfb676c121bba67c943f211af349c836d04226bc (diff) | |
download | gcc-81bfd1977ac6a45d790a48603e38d335eb0a8a36.zip gcc-81bfd1977ac6a45d790a48603e38d335eb0a8a36.tar.gz gcc-81bfd1977ac6a45d790a48603e38d335eb0a8a36.tar.bz2 |
re PR tree-optimization/46590 (long compile time with -O2 and many loops)
PR tree-optimization/46590
* cfgexpand.c: Revert last change (r183305).
* gimplify.c (gimplify_bind_expr): Add clobbers for all non-gimple
regs.
* tree-eh.c (cleanup_empty_eh): Try to optimize clobbers before
checking for emptiness.
From-SVN: r183566
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r-- | gcc/gimplify.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 99ae5ee..782adc3 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -1231,7 +1231,7 @@ gimplify_bind_expr (tree *expr_p, gimple_seq *pre_p) && !DECL_HAS_VALUE_EXPR_P (t) /* Only care for variables that have to be in memory. Others will be rewritten into SSA names, hence moved to the top-level. */ - && needs_to_live_in_memory (t)) + && !is_gimple_reg (t)) { tree clobber = build_constructor (TREE_TYPE (t), NULL); TREE_THIS_VOLATILE (clobber) = 1; |