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.17-295-g09c14ed


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  09c14ed23ec3c5993f0572ca7887fe9ffedf83f8 (commit)
       via  a688864eed638ec0004f7271918882c8827b7506 (commit)
       via  6295157a774bd5fd3c169d3cdd888e2f947767c5 (commit)
       via  b8de22026d71f539fb1f67c964d2a1ffe989bf83 (commit)
       via  11d6e2f2372c4df6bc79aebf6e6f84c43dd0994d (commit)
      from  90f42071e3d7d7d595fcd15c7241e7be46b2c2bd (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://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=09c14ed23ec3c5993f0572ca7887fe9ffedf83f8

commit 09c14ed23ec3c5993f0572ca7887fe9ffedf83f8
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 27 11:28:20 2013 +0530

    Format mpsqrt.c

diff --git a/ChangeLog b/ChangeLog
index ab71f0d..2779753 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2013-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
+	* sysdeps/ieee754/dbl-64/mpsqrt.c: Reformat.
+
 	* sysdeps/ieee754/dbl-64/mpatan2.c: Reformat.
 
 	* sysdeps/ieee754/dbl-64/mpatan.c: Reformat.
diff --git a/sysdeps/ieee754/dbl-64/mpsqrt.c b/sysdeps/ieee754/dbl-64/mpsqrt.c
index 941a4e9..71ef5ce 100644
--- a/sysdeps/ieee754/dbl-64/mpsqrt.c
+++ b/sysdeps/ieee754/dbl-64/mpsqrt.c
@@ -45,33 +45,37 @@
 /* p as integer. Routine computes sqrt(*x) and stores result in *y          */
 /****************************************************************************/
 
-static double fastiroot(double);
+static double fastiroot (double);
 
 void
 SECTION
-__mpsqrt(mp_no *x, mp_no *y, int p) {
-  int i,m,ey;
-  double dx,dy;
-  static const mp_no
-    mphalf   = {0,{1.0,8388608.0 /* 2^23 */}},
-    mp3halfs = {1,{1.0,1.0,8388608.0 /* 2^23 */}};
-  mp_no mpxn,mpz,mpu,mpt1,mpt2;
+__mpsqrt (mp_no *x, mp_no *y, int p)
+{
+  int i, m, ey;
+  double dx, dy;
+  static const mp_no mphalf = {0, {1.0, 8388608.0 /* 2^23 */}};
+  static const mp_no mp3halfs = {1, {1.0, 1.0, 8388608.0 /* 2^23 */}};
+  mp_no mpxn, mpz, mpu, mpt1, mpt2;
 
-  ey=EX/2;     __cpy(x,&mpxn,p);    mpxn.e -= (ey+ey);
-  __mp_dbl(&mpxn,&dx,p);   dy=fastiroot(dx);    __dbl_mp(dy,&mpu,p);
-  __mul(&mpxn,&mphalf,&mpz,p);
+  ey = EX / 2;
+  __cpy (x, &mpxn, p);
+  mpxn.e -= (ey + ey);
+  __mp_dbl (&mpxn, &dx, p);
+  dy = fastiroot (dx);
+  __dbl_mp (dy, &mpu, p);
+  __mul (&mpxn, &mphalf, &mpz, p);
 
-  m=__mpsqrt_mp[p];
-  for (i=0; i<m; i++) {
-    __sqr(&mpu,&mpt1,p);
-    __mul(&mpt1,&mpz,&mpt2,p);
-    __sub(&mp3halfs,&mpt2,&mpt1,p);
-    __mul(&mpu,&mpt1,&mpt2,p);
-    __cpy(&mpt2,&mpu,p);
-  }
-  __mul(&mpxn,&mpu,y,p);  EY += ey;
-
-  return;
+  m = __mpsqrt_mp[p];
+  for (i = 0; i < m; i++)
+    {
+      __sqr (&mpu, &mpt1, p);
+      __mul (&mpt1, &mpz, &mpt2, p);
+      __sub (&mp3halfs, &mpt2, &mpt1, p);
+      __mul (&mpu, &mpt1, &mpt2, p);
+      __cpy (&mpt2, &mpu, p);
+    }
+  __mul (&mpxn, &mpu, y, p);
+  EY += ey;
 }
 
 /***********************************************************/
@@ -80,22 +84,28 @@ __mpsqrt(mp_no *x, mp_no *y, int p) {
 /***********************************************************/
 static double
 SECTION
-fastiroot(double x) {
-  union {int i[2]; double d;} p,q;
-  double y,z, t;
+fastiroot (double x)
+{
+  union
+  {
+    int i[2];
+    double d;
+  } p, q;
+  double y, z, t;
   int n;
-  static const double c0 = 0.99674, c1 = -0.53380, c2 = 0.45472, c3 = -0.21553;
+  static const double c0 = 0.99674, c1 = -0.53380;
+  static const double c2 = 0.45472, c3 = -0.21553;
 
   p.d = x;
-  p.i[HIGH_HALF] = (p.i[HIGH_HALF] & 0x3FFFFFFF ) | 0x3FE00000 ;
+  p.i[HIGH_HALF] = (p.i[HIGH_HALF] & 0x3FFFFFFF) | 0x3FE00000;
   q.d = x;
   y = p.d;
-  z = y -1.0;
-  n = (q.i[HIGH_HALF] - p.i[HIGH_HALF])>>1;
-  z = ((c3*z + c2)*z + c1)*z + c0;            /* 2**-7         */
-  z = z*(1.5 - 0.5*y*z*z);                    /* 2**-14        */
-  p.d = z*(1.5 - 0.5*y*z*z);                  /* 2**-28        */
+  z = y - 1.0;
+  n = (q.i[HIGH_HALF] - p.i[HIGH_HALF]) >> 1;
+  z = ((c3 * z + c2) * z + c1) * z + c0;	/* 2**-7         */
+  z = z * (1.5 - 0.5 * y * z * z);		/* 2**-14        */
+  p.d = z * (1.5 - 0.5 * y * z * z);		/* 2**-28        */
   p.i[HIGH_HALF] -= n;
-  t = x*p.d;
-  return p.d*(1.5 - 0.5*p.d*t);
+  t = x * p.d;
+  return p.d * (1.5 - 0.5 * p.d * t);
 }

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a688864eed638ec0004f7271918882c8827b7506

commit a688864eed638ec0004f7271918882c8827b7506
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 27 11:27:41 2013 +0530

    Format mpatan2.c

diff --git a/ChangeLog b/ChangeLog
index 06bcafa..ab71f0d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2013-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
+	* sysdeps/ieee754/dbl-64/mpatan2.c: Reformat.
+
 	* sysdeps/ieee754/dbl-64/mpatan.c: Reformat.
 
 	* sysdeps/ieee754/dbl-64/mptan.c: Reformat.
diff --git a/sysdeps/ieee754/dbl-64/mpatan2.c b/sysdeps/ieee754/dbl-64/mpatan2.c
index c0b9aea..d29c2fb 100644
--- a/sysdeps/ieee754/dbl-64/mpatan2.c
+++ b/sysdeps/ieee754/dbl-64/mpatan2.c
@@ -32,37 +32,36 @@
 /*                                                                */
 /******************************************************************/
 
-
-
 #include "mpa.h"
 
 #ifndef SECTION
 # define SECTION
 #endif
 
-void __mpsqrt(mp_no *, mp_no *, int);
-void __mpatan(mp_no *, mp_no *, int);
-
-/* Multi-Precision Atan2(y,x) function subroutine, for p >= 4.    */
-/* y=0 is not permitted if x<=0. No error messages are given.     */
+/* Multi-Precision Atan2 (y, x) function subroutine, for p >= 4.
+   y = 0 is not permitted if x <= 0. No error messages are given.  */
 void
 SECTION
-__mpatan2(mp_no *y, mp_no *x, mp_no *z, int p) {
+__mpatan2 (mp_no *y, mp_no *x, mp_no *z, int p)
+{
+  mp_no mpt1, mpt2, mpt3;
 
-  mp_no mpt1,mpt2,mpt3;
-
-
-  if (X[0] <= ZERO) {
-    __dvd(x,y,&mpt1,p);          __mul(&mpt1,&mpt1,&mpt2,p);
-    if (mpt1.d[0] != ZERO)       mpt1.d[0] = ONE;
-    __add(&mpt2,&mpone,&mpt3,p); __mpsqrt(&mpt3,&mpt2,p);
-    __add(&mpt1,&mpt2,&mpt3,p);  mpt3.d[0]=Y[0];
-    __mpatan(&mpt3,&mpt1,p);     __add(&mpt1,&mpt1,z,p);
-  }
+  if (X[0] <= ZERO)
+    {
+      __dvd (x, y, &mpt1, p);
+      __mul (&mpt1, &mpt1, &mpt2, p);
+      if (mpt1.d[0] != ZERO)
+	mpt1.d[0] = ONE;
+      __add (&mpt2, &mpone, &mpt3, p);
+      __mpsqrt (&mpt3, &mpt2, p);
+      __add (&mpt1, &mpt2, &mpt3, p);
+      mpt3.d[0] = Y[0];
+      __mpatan (&mpt3, &mpt1, p);
+      __add (&mpt1, &mpt1, z, p);
+    }
   else
-  { __dvd(y,x,&mpt1,p);
-    __mpatan(&mpt1,z,p);
-  }
-
-  return;
+    {
+      __dvd (y, x, &mpt1, p);
+      __mpatan (&mpt1, z, p);
+    }
 }

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=6295157a774bd5fd3c169d3cdd888e2f947767c5

commit 6295157a774bd5fd3c169d3cdd888e2f947767c5
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 27 11:26:22 2013 +0530

    Format mpatan.c

diff --git a/ChangeLog b/ChangeLog
index 20ef3fe..06bcafa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2013-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
+	* sysdeps/ieee754/dbl-64/mpatan.c: Reformat.
+
 	* sysdeps/ieee754/dbl-64/mptan.c: Reformat.
 
 	* sysdeps/ieee754/dbl-64/mplog.c: Reformat.
diff --git a/sysdeps/ieee754/dbl-64/mpatan.c b/sysdeps/ieee754/dbl-64/mpatan.c
index 0f5a24a..cc879d8 100644
--- a/sysdeps/ieee754/dbl-64/mpatan.c
+++ b/sysdeps/ieee754/dbl-64/mpatan.c
@@ -39,63 +39,78 @@
 
 #include "mpatan.h"
 
-void __mpsqrt(mp_no *, mp_no *, int);
-
 void
 SECTION
-__mpatan(mp_no *x, mp_no *y, int p) {
+__mpatan (mp_no *x, mp_no *y, int p)
+{
 
-  int i,m,n;
+  int i, m, n;
   double dx;
-  mp_no
-    mptwoim1 = {0,{0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
-		0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,
-		0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0}};
+  mp_no mptwoim1 =
+  {
+    0,
+    {
+      0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
+      0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
+      0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
+    }
+  };
 
-  mp_no mps,mpsm,mpt,mpt1,mpt2,mpt3;
+  mp_no mps, mpsm, mpt, mpt1, mpt2, mpt3;
 
-		      /* Choose m and initiate mptwoim1 */
-    if      (EX>0) m=7;
-    else if (EX<0) m=0;
-    else {
-      __mp_dbl(x,&dx,p);  dx=ABS(dx);
-      for (m=6; m>0; m--)
-	{if (dx>__atan_xm[m].d) break;}
+  /* Choose m and initiate mptwoim1.  */
+  if (EX > 0)
+    m = 7;
+  else if (EX < 0)
+    m = 0;
+  else
+    {
+      __mp_dbl (x, &dx, p);
+      dx = ABS (dx);
+      for (m = 6; m > 0; m--)
+	{
+	  if (dx > __atan_xm[m].d)
+	    break;
+	}
     }
-    mptwoim1.e = 1;
-    mptwoim1.d[0] = ONE;
+  mptwoim1.e = 1;
+  mptwoim1.d[0] = ONE;
 
-				 /* Reduce x m times */
-    __sqr(x,&mpsm,p);
-    if (m==0) __cpy(x,&mps,p);
-    else {
-      for (i=0; i<m; i++) {
-	__add(&mpone,&mpsm,&mpt1,p);
-	__mpsqrt(&mpt1,&mpt2,p);
-	__add(&mpt2,&mpt2,&mpt1,p);
-	__add(&mptwo,&mpsm,&mpt2,p);
-	__add(&mpt1,&mpt2,&mpt3,p);
-	__dvd(&mpsm,&mpt3,&mpt1,p);
-	__cpy(&mpt1,&mpsm,p);
-      }
-      __mpsqrt(&mpsm,&mps,p);    mps.d[0] = X[0];
+  /* Reduce x m times.  */
+  __sqr (x, &mpsm, p);
+  if (m == 0)
+    __cpy (x, &mps, p);
+  else
+    {
+      for (i = 0; i < m; i++)
+	{
+	  __add (&mpone, &mpsm, &mpt1, p);
+	  __mpsqrt (&mpt1, &mpt2, p);
+	  __add (&mpt2, &mpt2, &mpt1, p);
+	  __add (&mptwo, &mpsm, &mpt2, p);
+	  __add (&mpt1, &mpt2, &mpt3, p);
+	  __dvd (&mpsm, &mpt3, &mpt1, p);
+	  __cpy (&mpt1, &mpsm, p);
+	}
+      __mpsqrt (&mpsm, &mps, p);
+      mps.d[0] = X[0];
     }
 
-		    /* Evaluate a truncated power series for Atan(s) */
-    n=__atan_np[p];    mptwoim1.d[1] = __atan_twonm1[p].d;
-    __dvd(&mpsm,&mptwoim1,&mpt,p);
-    for (i=n-1; i>1; i--) {
+  /* Evaluate a truncated power series for Atan(s).  */
+  n = __atan_np[p];
+  mptwoim1.d[1] = __atan_twonm1[p].d;
+  __dvd (&mpsm, &mptwoim1, &mpt, p);
+  for (i = n - 1; i > 1; i--)
+    {
       mptwoim1.d[1] -= TWO;
-      __dvd(&mpsm,&mptwoim1,&mpt1,p);
-      __mul(&mpsm,&mpt,&mpt2,p);
-      __sub(&mpt1,&mpt2,&mpt,p);
+      __dvd (&mpsm, &mptwoim1, &mpt1, p);
+      __mul (&mpsm, &mpt, &mpt2, p);
+      __sub (&mpt1, &mpt2, &mpt, p);
     }
-    __mul(&mps,&mpt,&mpt1,p);
-    __sub(&mps,&mpt1,&mpt,p);
-
-			  /* Compute Atan(x) */
-    mptwoim1.d[1] = 1 << m;
-    __mul(&mptwoim1,&mpt,y,p);
+  __mul (&mps, &mpt, &mpt1, p);
+  __sub (&mps, &mpt1, &mpt, p);
 
-  return;
+  /* Compute Atan(x).  */
+  mptwoim1.d[1] = 1 << m;
+  __mul (&mptwoim1, &mpt, y, p);
 }

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=b8de22026d71f539fb1f67c964d2a1ffe989bf83

commit b8de22026d71f539fb1f67c964d2a1ffe989bf83
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 27 11:25:39 2013 +0530

    Format mptan.c

diff --git a/ChangeLog b/ChangeLog
index 9cd6b9a..20ef3fe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2013-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
+	* sysdeps/ieee754/dbl-64/mptan.c: Reformat.
+
 	* sysdeps/ieee754/dbl-64/mplog.c: Reformat.
 
 2013-02-26  Roland McGrath  <roland@hack.frob.com>
diff --git a/sysdeps/ieee754/dbl-64/mptan.c b/sysdeps/ieee754/dbl-64/mptan.c
index 234108e..51b5718 100644
--- a/sysdeps/ieee754/dbl-64/mptan.c
+++ b/sysdeps/ieee754/dbl-64/mptan.c
@@ -40,23 +40,25 @@
 # define SECTION
 #endif
 
-int __mpranred(double, mp_no *, int);
-void __c32(mp_no *, mp_no *, mp_no *, int);
-
 void
 SECTION
-__mptan(double x, mp_no *mpy, int p) {
+__mptan (double x, mp_no *mpy, int p)
+{
 
   int n;
   mp_no mpw, mpc, mps;
 
-  n = __mpranred(x, &mpw, p) & 0x00000001; /* negative or positive result */
-  __c32(&mpw, &mpc, &mps, p);              /* computing sin(x) and cos(x) */
-  if (n)                     /* second or fourth quarter of unit circle */
-  { __dvd(&mpc,&mps,mpy,p);
-    mpy->d[0] *= MONE;
-  }                          /* tan is negative in this area */
-  else  __dvd(&mps,&mpc,mpy,p);
-
-  return;
+  /* Negative or positive result.  */
+  n = __mpranred (x, &mpw, p) & 0x00000001;
+  /* Computing sin(x) and cos(x).  */
+  __c32 (&mpw, &mpc, &mps, p);
+  /* Second or fourth quarter of unit circle.  */
+  if (n)
+    {
+      __dvd (&mpc, &mps, mpy, p);
+      mpy->d[0] *= MONE;
+    }
+  /* tan is negative in this area.  */
+  else
+    __dvd (&mps, &mpc, mpy, p);
 }

http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=11d6e2f2372c4df6bc79aebf6e6f84c43dd0994d

commit 11d6e2f2372c4df6bc79aebf6e6f84c43dd0994d
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 27 11:24:45 2013 +0530

    Format mplog.c

diff --git a/ChangeLog b/ChangeLog
index c39884b..9cd6b9a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
+
+	* sysdeps/ieee754/dbl-64/mplog.c: Reformat.
+
 2013-02-26  Roland McGrath  <roland@hack.frob.com>
 
 	* Makeconfig (%.v.i, %.v): Move these pattern rules outside of
diff --git a/sysdeps/ieee754/dbl-64/mplog.c b/sysdeps/ieee754/dbl-64/mplog.c
index e3d1084..f8d5c10 100644
--- a/sysdeps/ieee754/dbl-64/mplog.c
+++ b/sysdeps/ieee754/dbl-64/mplog.c
@@ -1,4 +1,3 @@
-
 /*
  * IBM Accurate Mathematical Library
  * written by International Business Machines Corp.
@@ -37,27 +36,30 @@
 #include "endian.h"
 #include "mpa.h"
 
-void __mpexp(mp_no *, mp_no *, int);
-
-void __mplog(mp_no *x, mp_no *y, int p) {
-  int i,m;
-  static const int mp[33] = {0,0,0,0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,
-                             4,4,4,4,4,4,4,4,4,4,4,4,4,4};
-  mp_no mpt1,mpt2;
+void
+__mplog (mp_no *x, mp_no *y, int p)
+{
+  int i, m;
+  static const int mp[33] =
+    {
+      0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
+      4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
+    };
+  mp_no mpt1, mpt2;
 
-  /* Choose m */
+  /* Choose m.  */
   m = mp[p];
 
-  /* Perform m newton iterations to solve for y: exp(y)-x=0.     */
-  /* The iterations formula is:  y(n+1)=y(n)+(x*exp(-y(n))-1).   */
-  __cpy(y,&mpt1,p);
-  for (i=0; i<m; i++) {
-    mpt1.d[0]=-mpt1.d[0];
-    __mpexp(&mpt1,&mpt2,p);
-    __mul(x,&mpt2,&mpt1,p);
-    __sub(&mpt1,&mpone,&mpt2,p);
-    __add(y,&mpt2,&mpt1,p);
-    __cpy(&mpt1,y,p);
-  }
-  return;
+  /* Perform m newton iterations to solve for y: exp(y) - x = 0.  The
+     iterations formula is:  y(n + 1) = y(n) + (x * exp(-y(n)) - 1).   */
+  __cpy (y, &mpt1, p);
+  for (i = 0; i < m; i++)
+    {
+      mpt1.d[0] = -mpt1.d[0];
+      __mpexp (&mpt1, &mpt2, p);
+      __mul (x, &mpt2, &mpt1, p);
+      __sub (&mpt1, &mpone, &mpt2, p);
+      __add (y, &mpt2, &mpt1, p);
+      __cpy (&mpt1, y, p);
+    }
 }

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

Summary of changes:
 ChangeLog                        |   12 ++++
 sysdeps/ieee754/dbl-64/mpatan.c  |  107 +++++++++++++++++++++----------------
 sysdeps/ieee754/dbl-64/mpatan2.c |   45 ++++++++--------
 sysdeps/ieee754/dbl-64/mplog.c   |   44 ++++++++-------
 sysdeps/ieee754/dbl-64/mpsqrt.c  |   78 ++++++++++++++++------------
 sysdeps/ieee754/dbl-64/mptan.c   |   28 +++++-----
 6 files changed, 177 insertions(+), 137 deletions(-)


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]