* builtins.c (fold_builtin_logb, fold_builtin_significand): New.
commitcb2b9385c9917a168813a83c327941e633b6959a
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 23 Feb 2007 14:27:50 +0000 (23 14:27 +0000)
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 23 Feb 2007 14:27:50 +0000 (23 14:27 +0000)
tree7e2a016dc7af2b71263c2fea7ef6b36983bc1429
parent9965deac486f5993befde29ed8ac97ffbebc1f8a
* builtins.c (fold_builtin_logb, fold_builtin_significand): New.
(fold_builtin_1): Use them.
* fold-const.c (tree_expr_nonnegative_warnv_p): Handle
BUILT_IN_SIGNIFICAND.

testsuite:
* gcc.dg/torture/builtin-logb-1.c: New test.
* gcc.dg/torture/builtin-math-2.c: Test logb/ilogb.
* gcc.dg/torture/builtin-nonneg-1.c: Test significand.
* gcc.dg/torture/builtin-frexp-1.c: Use -fno-finite-math-only on
sh* targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122257 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/builtins.c
gcc/fold-const.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/builtin-frexp-1.c
gcc/testsuite/gcc.dg/torture/builtin-logb-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/builtin-math-2.c
gcc/testsuite/gcc.dg/torture/builtin-nonneg-1.c