This is the mail archive of the libc-alpha@sources.redhat.com 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] Fix feholdexcept for hppa.


libc-alpha,

I made a mistake in the implementation of feholdexcept, and while the
test-fenv tests passed, I hadn't noticed that the test-float failures
had gone from non-conformance to SIGFPE. I've added test-suite regression
checking to debian's glibc build process, so this should not slip through
again. My apologies about having to change this code twice.

Please apply.

Cheers,
c.

2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>

	* sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
	status register loads.

--- libc-orig/sysdeps/hppa/fpu/feholdexcpt.c	2003-12-18 00:13:38.000000000 -0500
+++ libc/sysdeps/hppa/fpu/feholdexcpt.c	2004-02-18 02:24:05.000000000 -0500
@@ -46,11 +46,11 @@
   /* Load the new environment. */
   _regs = &clear;
   __asm__ (
-	   "fldd,ma -8(%1),%%fr3\n"
-	   "fldd,ma -8(%1),%%fr2\n"
-	   "fldd,ma -8(%1),%%fr1\n"
-	   "fldd 0(%1),%%fr0\n"
-	   : "=m" (*_regs), "+r" (_regs));
+	   "fldd,ma 8(%0),%%fr0\n"
+	   "fldd,ma 8(%0),%%fr1\n"
+	   "fldd,ma 8(%0),%%fr2\n"
+	   "fldd 0(%0),%%fr3\n"
+	   : : "r" (_regs));
 
   return 0;
 }


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