This is the mail archive of the libc-alpha@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]

[COMMITTED] Sync up comments between powerpc and default mpa.c


Hi,

This patch syncs up the comments between the default and power copies
of mpa.c wherever it makes sense to do so.  Committed as obvious.

Siddhesh

commit 20cd7fb3ae63795ae7c9a464abf5ed19b364ade0
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date:   Wed Feb 20 18:56:20 2013 +0530

    Copy comment about inner loop from powerpc mpa.c to the default one

diff --git a/ChangeLog b/ChangeLog
index e99aef1..2096d50 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2013-02-20  Siddhesh Poyarekar  <siddhesh@redhat.com>
+
+	* sysdeps/ieee754/dbl-64/mpa.c (__sqr): Copy over comment from
+	powerpc mpa.c.
+	* sysdeps/powerpc/powerpc32/power4/fpu/mpa.c (__mul): Fix
+	comment formatting.
+	* sysdeps/powerpc/powerpc64/power4/fpu/mpa.c (__mul): Likewise.
+
 2013-02-19  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #13550]
diff --git a/sysdeps/ieee754/dbl-64/mpa.c b/sysdeps/ieee754/dbl-64/mpa.c
index 1f60fa5..845a42c 100644
--- a/sysdeps/ieee754/dbl-64/mpa.c
+++ b/sysdeps/ieee754/dbl-64/mpa.c
@@ -749,6 +749,15 @@ __sqr (const mp_no *x, mp_no *y, int p)
       if (k % 2 == 0)
 	yk += X[lim] * X[lim];
 
+      /* In __mul, this loop (and the one within the next while loop) run
+         between a range to calculate the mantissa as follows:
+
+         Z[k] = X[k] * Y[n] + X[k+1] * Y[n-1] ... + X[n-1] * Y[k+1]
+		+ X[n] * Y[k]
+
+         For X == Y, we can get away with summing halfway and doubling the
+	 result.  For cases where the range size is even, the mid-point needs
+	 to be added separately (above).  */
       for (i = k - p, j = p; i < j; i++, j--)
 	yk2 += X[i] * X[j];
 
@@ -769,6 +778,7 @@ __sqr (const mp_no *x, mp_no *y, int p)
       if (k % 2 == 0)
 	yk += X[lim] * X[lim];
 
+      /* Likewise for this loop.  */
       for (i = 1, j = k - 1; i < j; i++, j--)
 	yk2 += X[i] * X[j];
 
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c b/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
index c00342c..be357a6 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
@@ -598,7 +598,7 @@ __mul (const mp_no *x, const mp_no *y, mp_no *z, int p)
   long p2 = p;
   double u, zk, zk2;
 
-  /* Is z=0? */
+  /* Is z=0?  */
   if (X[0] * Y[0] == ZERO)
     {
       Z[0] = ZERO;
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c b/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
index c00342c..be357a6 100644
--- a/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
+++ b/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
@@ -598,7 +598,7 @@ __mul (const mp_no *x, const mp_no *y, mp_no *z, int p)
   long p2 = p;
   double u, zk, zk2;
 
-  /* Is z=0? */
+  /* Is z=0?  */
   if (X[0] * Y[0] == ZERO)
     {
       Z[0] = ZERO;


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