diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-09-09 12:31:33 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-09-09 12:31:33 +0000 |
commit | 377bd225a6dacd1e6e37756bf971cafb4eaae09c (patch) | |
tree | b3fe1c648fef261496c2c8ff5b18ae17aa2b0f3b | |
parent | 50aacf4cb70f166dfe8586465e953df262fe6340 (diff) | |
download | gcc-377bd225a6dacd1e6e37756bf971cafb4eaae09c.tar.gz |
2011-09-09 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (create_expression_by_pieces): Fold the
last statement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178727 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-ssa-pre.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8a7e54a3b1c..02b99c7c0f6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2011-09-09 Richard Guenther <rguenther@suse.de> + * tree-ssa-pre.c (create_expression_by_pieces): Fold the + last statement. + +2011-09-09 Richard Guenther <rguenther@suse.de> + * gimple.h (fold_stmt_inplace): Adjust to take a gimple_stmt_iterator instead of a statement. * gimple-fold.c (fold_stmt_inplace): Likewise. diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index f69aec0dd4d..bee6ef52c6c 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -3182,6 +3182,10 @@ create_expression_by_pieces (basic_block block, pre_expr expr, /* All the symbols in NEWEXPR should be put into SSA form. */ mark_symbols_for_renaming (newstmt); + /* Fold the last statement. */ + gsi = gsi_last (*stmts); + fold_stmt_inplace (&gsi); + /* Add a value number to the temporary. The value may already exist in either NEW_SETS, or AVAIL_OUT, because we are creating the expression by pieces, and this particular piece of |