aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-03-02 08:04:30 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1996-03-02 08:04:30 -0500
commitd011fbf978ed4838a677b01cd75a720043256d36 (patch)
treead0b1112811a2673274469234e8932acc5219a32 /gcc/fold-const.c
parentec25526966761fb80b027fc17431911f91a95ee6 (diff)
downloadgcc-d011fbf978ed4838a677b01cd75a720043256d36.zip
gcc-d011fbf978ed4838a677b01cd75a720043256d36.tar.gz
gcc-d011fbf978ed4838a677b01cd75a720043256d36.tar.bz2
(fold, case *_DIV_EXPR): Ignore SAVE_EXPR if has RTL.
From-SVN: r11400
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r--gcc/fold-const.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index e4cf9e6..5901325 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -4051,7 +4051,7 @@ fold (expr)
tree c2 = integer_zero_node;
tree xarg0 = arg0;
- if (TREE_CODE (xarg0) == SAVE_EXPR)
+ if (TREE_CODE (xarg0) == SAVE_EXPR && SAVE_EXPR_RTL (xarg0) == 0)
have_save_expr = 1, xarg0 = TREE_OPERAND (xarg0, 0);
STRIP_NOPS (xarg0);
@@ -4069,7 +4069,7 @@ fold (expr)
xarg0 = TREE_OPERAND (xarg0, 0);
}
- if (TREE_CODE (xarg0) == SAVE_EXPR)
+ if (TREE_CODE (xarg0) == SAVE_EXPR && SAVE_EXPR_RTL (xarg0) == 0)
have_save_expr = 1, xarg0 = TREE_OPERAND (xarg0, 0);
STRIP_NOPS (xarg0);