This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.24-419-ge5277ba


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  e5277ba25dc0665f192ebc3f9649a00098dbdc9e (commit)
      from  b3daf3ee099d6c1e1e04a08221a6f68e79ced834 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=e5277ba25dc0665f192ebc3f9649a00098dbdc9e

commit e5277ba25dc0665f192ebc3f9649a00098dbdc9e
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Mon Nov 28 23:27:23 2016 +0000

    Make ilogb wrappers type-generic.
    
    This patch converts the ilogb wrappers (which set errno directly
    rather than doing anything with __kernel_standard) to use the
    type-generic template machinery.  This is intended as preparation for
    adding llogb.
    
    Tested for x86_64 and x86, and tested compile for other architectures
    with build-many-glibcs.py.
    
    	* math/w_ilogb_template.c: New file.  Based on math/w_ilogb.c.
    	* math/w_ilogb.c: Remove.
    	* math/w_ilogbf.c: Likewise.
    	* math/w_ilogbl.c: Likewise.
    	* sysdeps/ieee754/ldbl-opt/w_ilogb.c: Likewise.
    	* sysdeps/ieee754/ldbl-opt/w_ilogbl.c: Likewise.
    	* math/Makefile (gen-libm-calls): Add w_ilogbF.
    	(libm-calls): Remove w_ilogbF.
    	* sysdeps/ieee754/ldbl-opt/math-type-macros-double.h
    	(LDOUBLE_ilogbl_libm_version): New macro.

diff --git a/ChangeLog b/ChangeLog
index 591b4c0..6b64145 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
 2016-11-28  Joseph Myers  <joseph@codesourcery.com>
 
+	* math/w_ilogb_template.c: New file.  Based on math/w_ilogb.c.
+	* math/w_ilogb.c: Remove.
+	* math/w_ilogbf.c: Likewise.
+	* math/w_ilogbl.c: Likewise.
+	* sysdeps/ieee754/ldbl-opt/w_ilogb.c: Likewise.
+	* sysdeps/ieee754/ldbl-opt/w_ilogbl.c: Likewise.
+	* math/Makefile (gen-libm-calls): Add w_ilogbF.
+	(libm-calls): Remove w_ilogbF.
+	* sysdeps/ieee754/ldbl-opt/math-type-macros-double.h
+	(LDOUBLE_ilogbl_libm_version): New macro.
+
 	* sysdeps/unix/sysv/linux/ia64/tst-setcontext2.c: New file.
 
 	* sysdeps/ia64/fpu/libm-symbols.h: Make contents conditional on
diff --git a/math/Makefile b/math/Makefile
index 7196e5e..bcf627d 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -52,7 +52,7 @@ gen-libm-calls = cargF conjF cimagF crealF cabsF s_cacosF		  \
 		 k_casinhF s_csinhF k_casinhF s_csinhF s_catanhF s_catanF \
 		 s_ctanF s_ctanhF s_cexpF s_clogF s_cprojF s_csqrtF	  \
 		 s_cpowF s_clog10F s_fdimF s_nextdownF s_fmaxF s_fminF	  \
-		 s_nanF s_iseqsigF s_canonicalizeF
+		 s_nanF s_iseqsigF s_canonicalizeF w_ilogbF
 
 libm-calls =								  \
 	e_acosF e_acoshF e_asinF e_atan2F e_atanhF e_coshF e_expF e_fmodF \
@@ -67,7 +67,6 @@ libm-calls =								  \
 	w_atan2F w_atanhF w_coshF w_expF w_exp2F w_exp10F w_fmodF	  \
 	w_tgammaF w_hypotF w_j0F w_j1F w_jnF w_lgammaF w_lgammaF_r	  \
 	w_logF w_log10F w_powF w_remainderF w_scalbF w_sinhF w_sqrtF	  \
-	w_ilogbF							  \
 	s_fpclassifyF s_truncF						  \
 	s_remquoF e_log2F e_exp2F s_roundF s_nearbyintF s_sincosF	  \
 	s_fmaF s_lrintF s_llrintF s_lroundF s_llroundF e_exp10F w_log2F	  \
diff --git a/math/w_ilogb.c b/math/w_ilogb_template.c
similarity index 78%
rename from math/w_ilogb.c
rename to math/w_ilogb_template.c
index 3bbe5ec..acc7002 100644
--- a/math/w_ilogb.c
+++ b/math/w_ilogb_template.c
@@ -1,6 +1,6 @@
-/* Copyright (C) 2012-2016 Free Software Foundation, Inc.
+/* Wrapper to set errno for ilogb.
+   Copyright (C) 2012-2016 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
-   Contributed by Adhemerval Zanella <azanella@linux.vnet.ibm.com>, 2011.
 
    The GNU C Library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
@@ -23,9 +23,9 @@
 
 /* wrapper ilogb */
 int
-__ilogb (double x)
+M_DECL_FUNC (__ilogb) (FLOAT x)
 {
-  int r = __ieee754_ilogb (x);
+  int r = M_SUF (__ieee754_ilogb) (x);
   if (__builtin_expect (r == FP_ILOGB0, 0)
       || __builtin_expect (r == FP_ILOGBNAN, 0)
       || __builtin_expect (r == INT_MAX, 0))
@@ -35,8 +35,8 @@ __ilogb (double x)
     }
   return r;
 }
-weak_alias (__ilogb, ilogb)
-#ifdef NO_LONG_DOUBLE
-strong_alias (__ilogb, __ilogbl)
-weak_alias (__ilogb, ilogbl)
+declare_mgen_alias (__ilogb, ilogb)
+
+#if M_LIBM_NEED_COMPAT (ilogb)
+declare_mgen_libm_compat (__ilogb, ilogb)
 #endif
diff --git a/math/w_ilogbf.c b/math/w_ilogbf.c
deleted file mode 100644
index 92bf2df..0000000
--- a/math/w_ilogbf.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright (C) 2012-2016 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Adhemerval Zanella <azanella@linux.vnet.ibm.com>, 2011.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <math.h>
-#include <errno.h>
-#include <limits.h>
-#include <math_private.h>
-
-/* wrapper ilogbf */
-int
-__ilogbf (float x)
-{
-  int r = __ieee754_ilogbf (x);
-  if (__builtin_expect (r == FP_ILOGB0, 0)
-      || __builtin_expect (r == FP_ILOGBNAN, 0)
-      || __builtin_expect (r == INT_MAX, 0))
-    {
-      __set_errno (EDOM);
-      feraiseexcept (FE_INVALID);
-    }
-  return r;
-}
-weak_alias (__ilogbf, ilogbf)
diff --git a/math/w_ilogbl.c b/math/w_ilogbl.c
deleted file mode 100644
index 165772a..0000000
--- a/math/w_ilogbl.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright (C) 2012-2016 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Adhemerval Zanella <azanella@linux.vnet.ibm.com>, 2011.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <math.h>
-#include <errno.h>
-#include <limits.h>
-#include <math_private.h>
-
-/* wrapper ilogbl */
-int
-__ilogbl (long double x)
-{
-  int r = __ieee754_ilogbl (x);
-  if (__builtin_expect (r == FP_ILOGB0, 0)
-      || __builtin_expect (r == FP_ILOGBNAN, 0)
-      || __builtin_expect (r == INT_MAX, 0))
-    {
-      __set_errno (EDOM);
-      feraiseexcept (FE_INVALID);
-    }
-  return r;
-}
-weak_alias (__ilogbl, ilogbl)
diff --git a/sysdeps/ieee754/ldbl-opt/math-type-macros-double.h b/sysdeps/ieee754/ldbl-opt/math-type-macros-double.h
index 2569607..545482e 100644
--- a/sysdeps/ieee754/ldbl-opt/math-type-macros-double.h
+++ b/sysdeps/ieee754/ldbl-opt/math-type-macros-double.h
@@ -47,6 +47,7 @@
 #define LDOUBLE_fdiml_libm_version GLIBC_2_1
 #define LDOUBLE_fmaxl_libm_version GLIBC_2_1
 #define LDOUBLE_fminl_libm_version GLIBC_2_1
+#define LDOUBLE_ilogbl_libm_version GLIBC_2_0
 #define LDOUBLE_nanl_libm_version GLIBC_2_1
 
 /* Define compat symbols for long double on platforms
diff --git a/sysdeps/ieee754/ldbl-opt/w_ilogb.c b/sysdeps/ieee754/ldbl-opt/w_ilogb.c
deleted file mode 100644
index f518087..0000000
--- a/sysdeps/ieee754/ldbl-opt/w_ilogb.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#include <math/w_ilogb.c>
-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
-compat_symbol (libm, __ilogb, ilogbl, GLIBC_2_0);
-#endif
diff --git a/sysdeps/ieee754/ldbl-opt/w_ilogbl.c b/sysdeps/ieee754/ldbl-opt/w_ilogbl.c
deleted file mode 100644
index 36f83f6..0000000
--- a/sysdeps/ieee754/ldbl-opt/w_ilogbl.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <math_ldbl_opt.h>
-#undef weak_alias
-#define weak_alias(n,a)
-#include <math/w_ilogbl.c>
-long_double_symbol (libm, __ilogbl, ilogbl);

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                          |   11 ++++++
 math/Makefile                                      |    3 +-
 math/{w_ilogb.c => w_ilogb_template.c}             |   16 ++++----
 math/w_ilogbf.c                                    |   38 --------------------
 math/w_ilogbl.c                                    |   38 --------------------
 sysdeps/ieee754/ldbl-opt/math-type-macros-double.h |    1 +
 sysdeps/ieee754/ldbl-opt/w_ilogb.c                 |    5 ---
 sysdeps/ieee754/ldbl-opt/w_ilogbl.c                |    5 ---
 8 files changed, 21 insertions(+), 96 deletions(-)
 rename math/{w_ilogb.c => w_ilogb_template.c} (78%)
 delete mode 100644 math/w_ilogbf.c
 delete mode 100644 math/w_ilogbl.c
 delete mode 100644 sysdeps/ieee754/ldbl-opt/w_ilogb.c
 delete mode 100644 sysdeps/ieee754/ldbl-opt/w_ilogbl.c


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]