aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2006-11-01 02:56:45 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2006-11-01 02:56:45 +0000
commit682d039597faffc4ec84e7a569b93e9447b3e681 (patch)
treed9a9688ea50ffdbd59bbb3b045ca29467f5f137c /gcc/tree.h
parenta3a1ebb559bce23379e851067df080d9f103f55e (diff)
downloadgcc-682d039597faffc4ec84e7a569b93e9447b3e681.zip
gcc-682d039597faffc4ec84e7a569b93e9447b3e681.tar.gz
gcc-682d039597faffc4ec84e7a569b93e9447b3e681.tar.bz2
re PR middle-end/23470 (a*a (for floats) is not considered always postive (-ffast-math only))
PR middle-end/23470 * tree.h (tree_expr_nonnegative_p): Return "bool" instead of "int". * fold-const.c (tree_expr_nonnegative_p): Likewise. Consider pow(x,y) and powi(x,y) to be nonnegative if either x is nonnegative or y is an even integer. * gcc.dg/pr23470-1.c: New test case. From-SVN: r118355
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index ce9daa6..6c8133f 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -3606,7 +3606,7 @@ extern HOST_WIDE_INT tree_low_cst (tree, int);
extern int tree_int_cst_msb (tree);
extern int tree_int_cst_sgn (tree);
extern int tree_int_cst_sign_bit (tree);
-extern int tree_expr_nonnegative_p (tree);
+extern bool tree_expr_nonnegative_p (tree);
extern bool may_negate_without_overflow_p (tree);
extern tree get_inner_array_type (tree);