aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Schlüter <tobi@gcc.gnu.org>2009-08-20 20:47:51 +0200
committerTobias Schlüter <tobi@gcc.gnu.org>2009-08-20 20:47:51 +0200
commit3110415b773bb07dc6a09bdb5f934f4a643a2ff2 (patch)
tree35b98ad7eb6d04715488637797c99af11dce6aef
parent6d383c5e70a0cae0863d785f1fa8795a18b6be59 (diff)
downloadgcc-3110415b773bb07dc6a09bdb5f934f4a643a2ff2.zip
gcc-3110415b773bb07dc6a09bdb5f934f4a643a2ff2.tar.gz
gcc-3110415b773bb07dc6a09bdb5f934f4a643a2ff2.tar.bz2
* trans-stmt.c (gfc_trans_do): Add a few missing folds.
From-SVN: r150969
-rw-r--r--gcc/fortran/ChangeLog4
-rw-r--r--gcc/fortran/trans-stmt.c8
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 3a8dd03..6fde5a4 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,7 @@
+2009-08-20 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * trans-stmt.c (gfc_trans_do): Add a few missing folds.
+
2009-08-20 Michael Matz <matz@suse.de>
PR fortran/41126
diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c
index 66aecb1..1ae841f 100644
--- a/gcc/fortran/trans-stmt.c
+++ b/gcc/fortran/trans-stmt.c
@@ -1017,8 +1017,8 @@ gfc_trans_do (gfc_code * code)
tmp = fold_convert (utype, tmp);
tmp = fold_build2 (TRUNC_DIV_EXPR, utype, tmp,
fold_convert (utype, step));
- tmp = build2 (MODIFY_EXPR, void_type_node, countm1, tmp);
- pos = build2 (COMPOUND_EXPR, void_type_node, pos, tmp);
+ tmp = fold_build2 (MODIFY_EXPR, void_type_node, countm1, tmp);
+ pos = fold_build2 (COMPOUND_EXPR, void_type_node, pos, tmp);
tmp = fold_build2 (GT_EXPR, boolean_type_node, to, from);
neg = fold_build3 (COND_EXPR, void_type_node, tmp,
@@ -1029,8 +1029,8 @@ gfc_trans_do (gfc_code * code)
tmp = fold_build2 (TRUNC_DIV_EXPR, utype, tmp,
fold_convert (utype, fold_build1 (NEGATE_EXPR,
type, step)));
- tmp = build2 (MODIFY_EXPR, void_type_node, countm1, tmp);
- neg = build2 (COMPOUND_EXPR, void_type_node, neg, tmp);
+ tmp = fold_build2 (MODIFY_EXPR, void_type_node, countm1, tmp);
+ neg = fold_build2 (COMPOUND_EXPR, void_type_node, neg, tmp);
tmp = fold_build3 (COND_EXPR, void_type_node, pos_step, pos, neg);
gfc_add_expr_to_block (&block, tmp);