aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2015-10-21 21:10:49 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2015-10-21 21:10:49 +0000
commitc26065cc38586f9d014b0f04a54dfa0e52c23189 (patch)
tree084c76d531cbfb2e9595783f1db615465fd22c4f /gcc/fold-const.c
parente90bedf52c86a7b4e2e0a1f8a5a1450725cb95b6 (diff)
downloadgcc-c26065cc38586f9d014b0f04a54dfa0e52c23189.zip
gcc-c26065cc38586f9d014b0f04a54dfa0e52c23189.tar.gz
gcc-c26065cc38586f9d014b0f04a54dfa0e52c23189.tar.bz2
tree.def (CEIL_DIV_EXPR, [...]): Tweak comments.
* tree.def (CEIL_DIV_EXPR, FLOOR_DIV_EXPR, ROUND_DIV_EXPR): Tweak comments. (TRUNC_MOD_EXPR, CEIL_MOD_EXPR, FLOOR_MOD_EXPR, ROUND_MOD_EXPR): Add comments on sign of the result. * fold-const.c (tree_binary_nonnegative_warnv_p) <FLOOR_MOD_EXPR>: Recurse on operand #1 instead of operand #0. <CEIL_MOD_EXPR>: Do not recurse. <ROUND_MOD_EXPR>: Likewise. From-SVN: r229146
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r--gcc/fold-const.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 042d43f..b7874a0 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -12908,11 +12908,13 @@ tree_binary_nonnegative_warnv_p (enum tree_code code, tree type, tree op0,
return RECURSE (op0) && RECURSE (op1);
case TRUNC_MOD_EXPR:
- case CEIL_MOD_EXPR:
- case FLOOR_MOD_EXPR:
- case ROUND_MOD_EXPR:
return RECURSE (op0);
+ case FLOOR_MOD_EXPR:
+ return RECURSE (op1);
+
+ case CEIL_MOD_EXPR:
+ case ROUND_MOD_EXPR:
default:
return tree_simple_nonnegative_warnv_p (code, type);
}