On May 31, 2006, at 1:35 PM, Eric Lemings wrote:
http://issues.apache.org/jira/browse/STDCXX-192
The correct patch:
Index: src/i86/atomic.s
===================================================================
--- src/i86/atomic.s (revision 410704)
+++ src/i86/atomic.s (working copy)
@@ -30,7 +30,9 @@
************************************************************************
**/
.globl __rw_atomic_xchg8
+#ifndef __APPLE__
.type __rw_atomic_xchg8, @function
+#endif
__rw_atomic_xchg8: /* ; char (char *x, char y) */
mov 4(%esp), %ecx /* ; %ecx =
x */
movb 8(%esp), %al /* ; %al =
y */
@@ -46,7 +48,9 @@
************************************************************************
**/
.globl __rw_atomic_xchg16
+#ifndef __APPLE__
.type __rw_atomic_xchg16, @function
+#endif
__rw_atomic_xchg16: /* ; short (short *x, short y) */
mov 4(%esp), %ecx /* ; %ecx =
x */
mov 8(%esp), %eax /* ; %eax =
y */
@@ -62,7 +66,9 @@
************************************************************************
**/
.globl __rw_atomic_xchg32
+#ifndef __APPLE__
.type __rw_atomic_xchg32, @function
+#endif
__rw_atomic_xchg32: /* ; int (int *x, int y) */
movl 4(%esp), %ecx /* ; %ecx =
x */
movl 8(%esp), %eax /* ; %eax =
y */
@@ -78,7 +84,9 @@
************************************************************************
**/
.globl __rw_atomic_add8
+#ifndef __APPLE__
.type __rw_atomic_add8, @function
+#endif
__rw_atomic_add8: /* ; char (char *dst, int inc) */
mov 4(%esp), %ecx /* ; %ecx =
dst */
mov 8(%esp), %eax /* ; %eax =
inc */
@@ -101,7 +109,9 @@
************************************************************************
**/
.globl __rw_atomic_add16
+#ifndef __APPLE__
.type __rw_atomic_add16, @function
+#endif
__rw_atomic_add16: /* ; long (long *dst, long inc) */
mov 4(%esp), %ecx /* ; %ecx =
dst */
mov 8(%esp), %eax /* ; %eax =
inc */
@@ -124,7 +134,9 @@
************************************************************************
**/
.globl __rw_atomic_add32
+#ifndef __APPLE__
.type __rw_atomic_add32, @function
+#endif
__rw_atomic_add32: /* ; long (long *dst, long inc) */
movl 4(%esp), %ecx /* ; %ecx =
dst */
movl 8(%esp), %edx /* ; %edx =
inc */