about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-07-31 07:16:41 +0000
committerUlrich Drepper <drepper@redhat.com>1999-07-31 07:16:41 +0000
commit899a282782e09ff205d7fce117d0fec5a3277e15 (patch)
treece8f010cc0b4f2a851346c351de42fb4304bc0d9
parentbdb04ee8e21c3ee229bf3d2ad2ca8288e3cb44e9 (diff)
downloadglibc-899a282782e09ff205d7fce117d0fec5a3277e15.tar.gz
glibc-899a282782e09ff205d7fce117d0fec5a3277e15.tar.xz
glibc-899a282782e09ff205d7fce117d0fec5a3277e15.zip
Update.
1999-07-31  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/fpu/e_pow.S: Use addl %esp instead of pop.
	* sysdeps/i386/fpu/e_powf.S: Likewise.
	* sysdeps/i386/fpu/e_powl.S: Likewise.  [PR libc/1213].

	* sysdeps/generic/e_lgammal_r.c: Set *signgam to zero.
	* sysdeps/generic/e_gammal_r.c: Likewise.  [PR libc/1212].
-rw-r--r--ChangeLog9
-rw-r--r--sysdeps/generic/e_gammal_r.c1
-rw-r--r--sysdeps/generic/e_lgammal_r.c1
-rw-r--r--sysdeps/i386/fpu/e_pow.S3
-rw-r--r--sysdeps/i386/fpu/e_powf.S2
-rw-r--r--sysdeps/i386/fpu/e_powl.S3
6 files changed, 14 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 37eb4ad5c9..669418d29c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+1999-07-31  Ulrich Drepper  <drepper@cygnus.com>
+
+	* sysdeps/i386/fpu/e_pow.S: Use addl %esp instead of pop.
+	* sysdeps/i386/fpu/e_powf.S: Likewise.
+	* sysdeps/i386/fpu/e_powl.S: Likewise.  [PR libc/1213].
+
+	* sysdeps/generic/e_lgammal_r.c: Set *signgam to zero.
+	* sysdeps/generic/e_gammal_r.c: Likewise.  [PR libc/1212].
+
 1999-07-30  Andreas Schwab  <schwab@suse.de>
 
 	* sysdeps/unix/sysv/linux/getsysstats.c (GET_NPROCS_PARSER): New
diff --git a/sysdeps/generic/e_gammal_r.c b/sysdeps/generic/e_gammal_r.c
index 16b641bdd9..1c45c8421b 100644
--- a/sysdeps/generic/e_gammal_r.c
+++ b/sysdeps/generic/e_gammal_r.c
@@ -5,6 +5,7 @@
 long double
 __ieee754_gammal_r (long double x, int *signgamp)
 {
+  *signgamp = 0;
   fputs ("__ieee754_gammal_r not implemented\n", stderr);
   __set_errno (ENOSYS);
   return 0.0;
diff --git a/sysdeps/generic/e_lgammal_r.c b/sysdeps/generic/e_lgammal_r.c
index 0c1bc661ad..eea3d48d2a 100644
--- a/sysdeps/generic/e_lgammal_r.c
+++ b/sysdeps/generic/e_lgammal_r.c
@@ -5,6 +5,7 @@
 long double
 __ieee754_lgammal_r (long double x, int *signgamp)
 {
+  *signgamp = 0;
   fputs ("__ieee754_lgammal_r not implemented\n", stderr);
   __set_errno (ENOSYS);
   return 0.0;
diff --git a/sysdeps/i386/fpu/e_pow.S b/sysdeps/i386/fpu/e_pow.S
index 6b20482319..75b39e4884 100644
--- a/sysdeps/i386/fpu/e_pow.S
+++ b/sysdeps/i386/fpu/e_pow.S
@@ -311,8 +311,7 @@ ENTRY(__ieee754_pow)
 	ret
 
 22:	fstp	%st(0)
-23:	popl	%eax
-	popl	%edx
+23:	addl	$8, %esp	// Don't use 2 x pop
 24:	fldl	MO(zero)
 	ret
 
diff --git a/sysdeps/i386/fpu/e_powf.S b/sysdeps/i386/fpu/e_powf.S
index 9ea41ba3c9..c023c11e65 100644
--- a/sysdeps/i386/fpu/e_powf.S
+++ b/sysdeps/i386/fpu/e_powf.S
@@ -303,7 +303,7 @@ ENTRY(__ieee754_powf)
 	ret
 
 22:	fstp	%st(0)
-23:	popl	%eax
+23:	addl	$4, %esp	// Don't use pop.
 24:	fldl	MO(zero)
 	ret
 
diff --git a/sysdeps/i386/fpu/e_powl.S b/sysdeps/i386/fpu/e_powl.S
index e733e522c8..769be4c197 100644
--- a/sysdeps/i386/fpu/e_powl.S
+++ b/sysdeps/i386/fpu/e_powl.S
@@ -298,8 +298,7 @@ ENTRY(__ieee754_powl)
 	ret
 
 22:	fstp	%st(0)
-23:	popl	%eax
-	popl	%edx
+23:	addl	$8, %esp	// Don't use 2 x pop
 24:	fldl	MO(zero)
 	ret