aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2013-02-21 12:17:29 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2013-02-21 12:17:29 +0530
commit4c7a4263afe8304e127ae2888950f02c8bc9a9f9 (patch)
treed65894bd820afd176fe671306485c5389a6e8703
parent97ccb9d55a5379eeea6988f26e7f3ad500af0991 (diff)
downloadglibc-4c7a4263afe8304e127ae2888950f02c8bc9a9f9.tar
glibc-4c7a4263afe8304e127ae2888950f02c8bc9a9f9.tar.gz
glibc-4c7a4263afe8304e127ae2888950f02c8bc9a9f9.tar.bz2
glibc-4c7a4263afe8304e127ae2888950f02c8bc9a9f9.zip
Mark ZERO inputs to __mul as unlikely on powerpc
Syncs up with generic code.
-rw-r--r--ChangeLog7
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/mpa.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power4/fpu/mpa.c2
3 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 5d2a885a81..fa98152d6d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-02-21 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c (__mul): Mark X
+ or Y being zero as being unlikely.
+ * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c (__mul):
+ Likewise.
+
2013-02-20 Carlos O'Donell <carlos@redhat.com>
* manual/nss.texi (System Databases and Name Service Switch):
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c b/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
index be357a63af..f4500df629 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/mpa.c
@@ -599,7 +599,7 @@ __mul (const mp_no *x, const mp_no *y, mp_no *z, int p)
double u, zk, zk2;
/* Is z=0? */
- if (X[0] * Y[0] == ZERO)
+ if (__glibc_unlikely (X[0] * Y[0] == ZERO))
{
Z[0] = ZERO;
return;
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c b/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
index be357a63af..f4500df629 100644
--- a/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
+++ b/sysdeps/powerpc/powerpc64/power4/fpu/mpa.c
@@ -599,7 +599,7 @@ __mul (const mp_no *x, const mp_no *y, mp_no *z, int p)
double u, zk, zk2;
/* Is z=0? */
- if (X[0] * Y[0] == ZERO)
+ if (__glibc_unlikely (X[0] * Y[0] == ZERO))
{
Z[0] = ZERO;
return;