summary refs log tree commit diff
diff options
context:
space:
mode:
-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