This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Patch] middle-end/21743
- From: Paolo Carlini <pcarlini at suse dot de>
- To: "'gcc-patches at gcc dot gnu dot org'" <gcc-patches at gcc dot gnu dot org>
- Cc: Mark Mitchell <mark at codesourcery dot com>
- Date: Mon, 30 May 2005 21:16:50 +0200
- Subject: [Patch] middle-end/21743
Hi,
now that Mark fixed c++/21784, we can safely enable this builtin without
fearing regressions in the libstdc++-v3 testsuite (the only reason why
it was disabled). In turn, this will allow to consistently use
__builtin_clog & co in v3 itself.
Tested x86-linux (c, c++) and x86_64-linux (c, c++, f95).
Ok for mainline?
Paolo.
/////////////////////
2005-05-30 Paolo Carlini <pcarlini@suse.de>
PR middle-end/21743
* builtins.def (BUILT_IN_CLOG, BUILT_IN_CLOGF, BUILT_IN_CLOGL):
Enable.
2005-05-30 Paolo Carlini <pcarlini@suse.de>
PR middle-end/21743
* gcc.dg/builtins-1.c: Activate disabled clog test.
* gcc.dg/torture/builtin-attr-1.c: Likewise.
Index: builtins.def
===================================================================
RCS file: /cvs/gcc/gcc/gcc/builtins.def,v
retrieving revision 1.102
diff -p -r1.102 builtins.def
*** builtins.def 14 Apr 2005 23:37:31 -0000 1.102
--- builtins.def 30 May 2005 17:38:34 -0000
*************** DEF_EXT_LIB_BUILTIN (BUILT_IN_YNF, "y
*** 397,404 ****
DEF_EXT_LIB_BUILTIN (BUILT_IN_YNL, "ynl", BT_FN_LONGDOUBLE_INT_LONGDOUBLE, ATTR_MATHFN_FPROUNDING_ERRNO)
/* Category: _Complex math builtins. */
- /* The C99 clog function conflicts with C++ iostreams clog, see
- http://gcc.gnu.org/ml/gcc-patches/2003-09/msg00510.html */
DEF_C99_BUILTIN (BUILT_IN_CABS, "cabs", BT_FN_DOUBLE_COMPLEX_DOUBLE, ATTR_MATHFN_FPROUNDING)
DEF_C99_BUILTIN (BUILT_IN_CABSF, "cabsf", BT_FN_FLOAT_COMPLEX_FLOAT, ATTR_MATHFN_FPROUNDING)
DEF_C99_BUILTIN (BUILT_IN_CABSL, "cabsl", BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_MATHFN_FPROUNDING)
--- 397,402 ----
*************** DEF_C99_BUILTIN (BUILT_IN_CEXPL,
*** 435,443 ****
DEF_C99_BUILTIN (BUILT_IN_CIMAG, "cimag", BT_FN_DOUBLE_COMPLEX_DOUBLE, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CIMAGF, "cimagf", BT_FN_FLOAT_COMPLEX_FLOAT, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CIMAGL, "cimagl", BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST)
! /*DEF_C99_BUILTIN (BUILT_IN_CLOG, "clog", BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, ATTR_MATHFN_FPROUNDING)*/
! /*DEF_C99_BUILTIN (BUILT_IN_CLOGF, "clogf", BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, ATTR_MATHFN_FPROUNDING)*/
! /*DEF_C99_BUILTIN (BUILT_IN_CLOGL, "clogl", BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_MATHFN_FPROUNDING)*/
DEF_C99_BUILTIN (BUILT_IN_CONJ, "conj", BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CONJF, "conjf", BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CONJL, "conjl", BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST)
--- 433,441 ----
DEF_C99_BUILTIN (BUILT_IN_CIMAG, "cimag", BT_FN_DOUBLE_COMPLEX_DOUBLE, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CIMAGF, "cimagf", BT_FN_FLOAT_COMPLEX_FLOAT, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CIMAGL, "cimagl", BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST)
! DEF_C99_BUILTIN (BUILT_IN_CLOG, "clog", BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, ATTR_MATHFN_FPROUNDING)
! DEF_C99_BUILTIN (BUILT_IN_CLOGF, "clogf", BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, ATTR_MATHFN_FPROUNDING)
! DEF_C99_BUILTIN (BUILT_IN_CLOGL, "clogl", BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_MATHFN_FPROUNDING)
DEF_C99_BUILTIN (BUILT_IN_CONJ, "conj", BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CONJF, "conjf", BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_CONJL, "conjl", BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST)
Index: testsuite/gcc.dg/builtins-1.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/gcc.dg/builtins-1.c,v
retrieving revision 1.10
diff -p -r1.10 builtins-1.c
*** testsuite/gcc.dg/builtins-1.c 20 Mar 2004 10:19:11 -0000 1.10
--- testsuite/gcc.dg/builtins-1.c 30 May 2005 17:38:37 -0000
*************** CPTEST1 (ccos)
*** 190,196 ****
CPTEST1 (ccosh)
CPTEST1 (cexp)
CPTEST1RETFP (cimag)
! /*CPTEST1 (clog)*/
CPTEST1 (conj)
CPTEST2 (cpow)
CPTEST1 (cproj)
--- 190,196 ----
CPTEST1 (ccosh)
CPTEST1 (cexp)
CPTEST1RETFP (cimag)
! CPTEST1 (clog)
CPTEST1 (conj)
CPTEST2 (cpow)
CPTEST1 (cproj)
Index: testsuite/gcc.dg/torture/builtin-attr-1.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c,v
retrieving revision 1.7
diff -p -r1.7 builtin-attr-1.c
*** testsuite/gcc.dg/torture/builtin-attr-1.c 14 Aug 2004 16:51:37 -0000 1.7
--- testsuite/gcc.dg/torture/builtin-attr-1.c 30 May 2005 17:38:38 -0000
***************
*** 1,4 ****
! /* Copyright (C) 2003 Free Software Foundation.
Verify that the `const' function attribute is applied to various
builtins and that these functions are optimized away by the
--- 1,4 ----
! /* Copyright (C) 2003, 2005 Free Software Foundation.
Verify that the `const' function attribute is applied to various
builtins and that these functions are optimized away by the
*************** CPTEST1 (ccos)
*** 393,399 ****
CPTEST1 (ccosh)
CPTEST1 (cexp)
CPTEST1R (cimag)
! /*CPTEST1 (clog)*/
CPTEST1 (conj)
CPTEST2 (cpow)
CPTEST1 (cproj)
--- 393,399 ----
CPTEST1 (ccosh)
CPTEST1 (cexp)
CPTEST1R (cimag)
! CPTEST1 (clog)
CPTEST1 (conj)
CPTEST2 (cpow)
CPTEST1 (cproj)