diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2007-03-08 21:37:28 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2007-03-08 21:37:28 +0000 |
commit | aeabd15d4578ba6e4aaf05a7aa45686d2c28f32e (patch) | |
tree | dbab368dba483b020c7abd1257f7b8bc8f3a18a4 /gcc/fold-const.c | |
parent | f53e867d7380799d6e3e1513f436ded5b8131668 (diff) | |
download | gcc-aeabd15d4578ba6e4aaf05a7aa45686d2c28f32e.zip gcc-aeabd15d4578ba6e4aaf05a7aa45686d2c28f32e.tar.gz gcc-aeabd15d4578ba6e4aaf05a7aa45686d2c28f32e.tar.bz2 |
builtins.def (lceil, [...]): Mark with ATTR_CONST_NOTHROW_LIST.
* builtins.def (lceil, lceilf, lceill, lfloor, lfloorf, lfloorl,
llceil, llceilf, llceill, llfloor, llfloorf, llfloorl): Mark with
ATTR_CONST_NOTHROW_LIST.
* fold-const.c (tree_expr_nonnegative_warnv_p): Handle
FIX_TRUNC_EXPR.
testsuite:
* gcc.dg/builtins-55.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-attr-1.c: Likewise.
* gcc.dg/torture/builtin-convert-1.c: Likewise. Also test *lrint* and *lround*.
* gcc.dg/torture/builtin-convert-2.c: Test ceil->lceil and floor->lfloor.
* gcc.dg/torture/builtin-convert-3.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-integral-1.c: Likewise.
* gcc.dg/torture/builtin-minmax-1.c: Likewise. Also test *lrint*
and *lround*. Correct macro names.
* gcc.dg/torture/builtin-nonneg-1.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-rounding-1.c: Likewise.
From-SVN: r122713
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 4d59f71..45ee227 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -13256,6 +13256,7 @@ tree_expr_nonnegative_warnv_p (tree t, bool *strict_overflow_p) case SAVE_EXPR: case NON_LVALUE_EXPR: case FLOAT_EXPR: + case FIX_TRUNC_EXPR: return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0), strict_overflow_p); |