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]

[PATCH] Use mpone and mptwo instead of duplicate definitions


Hi,

sincos32.c defines the mp_no versions of 1.0 and 2.0 instead of using
mpone and mptwo (defined in mpa.c).  Attached patch makes the code use
mpone and mptwo and removes those duplicate static variables.  This
reduces the binary size (5062 bytes on x86_64).  Verified on x86_64
that there are no regressions in the test suite due to this.  OK to
commit?

Siddhesh

	* sysdeps/ieee754/dbl-64/sincos32.c (__c32): Use MPONE and
	MPTWO.
	(__mpranred): Likewise.

diff --git a/sysdeps/ieee754/dbl-64/sincos32.c b/sysdeps/ieee754/dbl-64/sincos32.c
index 0a8b0a7..3d2b291 100644
--- a/sysdeps/ieee754/dbl-64/sincos32.c
+++ b/sysdeps/ieee754/dbl-64/sincos32.c
@@ -105,7 +105,6 @@ cc32(mp_no *x, mp_no *y, int p) {
 void
 SECTION
 __c32(mp_no *x, mp_no *y, mp_no *z, int p) {
-  static const mp_no mpt={1,{1.0,2.0}}, one={1,{1.0,1.0}};
   mp_no u,t,t1,t2,c,s;
   int i;
   __cpy(x,&u,p);
@@ -116,11 +115,11 @@ __c32(mp_no *x, mp_no *y, mp_no *z, int p) {
     __mul(&c,&s,&t,p);
     __sub(&s,&t,&t1,p);
     __add(&t1,&t1,&s,p);
-    __sub(&mpt,&c,&t1,p);
+    __sub(&mptwo,&c,&t1,p);
     __mul(&t1,&c,&t2,p);
     __add(&t2,&t2,&c,p);
   }
-  __sub(&one,&c,y,p);
+  __sub(&mpone,&c,y,p);
   __cpy(&s,z,p);
 }
 
@@ -237,7 +236,6 @@ __mpranred(double x, mp_no *y, int p)
   number v;
   double t,xn;
   int i,k,n;
-  static const mp_no one = {1,{1.0,1.0}};
   mp_no a,b,c;
 
   if (ABS(x) < 2.8e14) {
@@ -266,7 +264,7 @@ __mpranred(double x, mp_no *y, int p)
     c.e=0;
     if (c.d[1] >=  8388608.0)
     { t +=1.0;
-      __sub(&c,&one,&b,p);
+      __sub(&c,&mpone,&b,p);
       __mul(&b,&hp,y,p);
     }
     else __mul(&c,&hp,y,p);


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