about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/alpha/atomicity.h12
-rw-r--r--sysdeps/i386/fpu/bits/mathinline.h2
2 files changed, 7 insertions, 7 deletions
diff --git a/sysdeps/alpha/atomicity.h b/sysdeps/alpha/atomicity.h
index 34a538f4c0..6ed2ee61ed 100644
--- a/sysdeps/alpha/atomicity.h
+++ b/sysdeps/alpha/atomicity.h
@@ -36,10 +36,10 @@ exchange_and_add (volatile uint32_t *mem, int val)
 	"addl	%0,%4,%1\n\t"
 	"stl_c	%1,%2\n\t"
 	"beq	%1,2f\n"
-	".subsection 2\n"
+	".subsection 1\n"
 	"2:\t"
 	"br	1b\n"
-	".subsection 1\n\t"
+	".previous\n\t"
 	"mb\n\t"
 	"/* End exchange & add */"
 	: "=&r"(result), "=&r"(tmp), "=m"(*mem)
@@ -61,10 +61,10 @@ atomic_add (volatile uint32_t *mem, int val)
 	"addl	%0,%3,%0\n\t"
 	"stl_c	%0,%1\n\t"
 	"beq	%0,2f\n\t"
-	".subsection 2\n"
+	".subsection 1\n"
 	"2:\t"
 	"br	1b\n"
-	".subsection 1\n\t"
+	".previous\n\t"
 	"mb\n\t"
 	"/* End exchange & add */"
 	: "=&r"(result), "=m"(*mem)
@@ -86,10 +86,10 @@ compare_and_swap (volatile long int *p, long int oldval, long int newval)
 	"mov	%3,%0\n\t"
 	"stq_c	%0,%1\n\t"
 	"beq	%0,2f\n\t"
-	".subsection 2\n"
+	".subsection 1\n"
 	"2:\t"
 	"br	1b\n"
-	".subsection 1\n\t"
+	".previous\n\t"
 	"3:\t"
 	"mb\n\t"
 	"/* End compare & swap */"
diff --git a/sysdeps/i386/fpu/bits/mathinline.h b/sysdeps/i386/fpu/bits/mathinline.h
index 00fe3c036f..e22a251107 100644
--- a/sysdeps/i386/fpu/bits/mathinline.h
+++ b/sysdeps/i386/fpu/bits/mathinline.h
@@ -112,7 +112,7 @@
 
 /* The gcc, version 2.7 or below, has problems with all this inlining
    code.  So disable it for this version of the compiler.  */
-# if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 7))
+# if __GNUC_PREREQ (2, 8)
 /* Test for negative number.  Used in the signbit() macro.  */
 __MATH_INLINE int
 __signbitf (float __x)