aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorKaveh R. Ghazi <ghazi@caip.rutgers.edu>2008-05-18 23:19:38 +0000
committerKaveh Ghazi <ghazi@gcc.gnu.org>2008-05-18 23:19:38 +0000
commit05f41289d88658c05f34f713aed66054e12ff316 (patch)
tree90c75e8f2433a04ac95315cbba4166b8f7f7b3d2 /gcc/c-common.c
parentd393bbd73754dfe54fac24d350c789316f17428f (diff)
downloadgcc-05f41289d88658c05f34f713aed66054e12ff316.zip
gcc-05f41289d88658c05f34f713aed66054e12ff316.tar.gz
gcc-05f41289d88658c05f34f713aed66054e12ff316.tar.bz2
re PR middle-end/35509 (builtin isinf() mismatch to compile-time substitution)
PR middle-end/35509 * builtins.c (mathfn_built_in_1): Renamed from mathfn_built_in. Add `implicit' parameter. Handle BUILT_IN_SIGNBIT. (mathfn_built_in): Rewrite in terms of mathfn_built_in_1. (fold_builtin_classify): Handle BUILT_IN_ISINF_SIGN. (fold_builtin_1): Likewise. * builtins.def (BUILT_IN_ISINF_SIGN): New. c-common.c (check_builtin_function_arguments): Handle BUILT_IN_ISINF_SIGN. * doc/extend.texi: Document __builtin_isinf_sign. * fold-const.c (operand_equal_p): Handle COND_EXPR. testsuite: * gcc.dg/builtins-error.c: Test __builtin_isinf_sign. * gcc.dg/tg-tests.h: Likewise. Mark variables volatile. * gcc.dg/torture/builtin-isinf_sign-1.c: New test. From-SVN: r135517
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 415807f..67c9c0b 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -6674,6 +6674,7 @@ check_builtin_function_arguments (tree fndecl, int nargs, tree *args)
case BUILT_IN_ISFINITE:
case BUILT_IN_ISINF:
+ case BUILT_IN_ISINF_SIGN:
case BUILT_IN_ISNAN:
case BUILT_IN_ISNORMAL:
if (validate_nargs (fndecl, nargs, 1))