Module Name: src
Committed By: martin
Date: Fri Feb 21 16:21:02 UTC 2014
Modified Files:
src/common/lib/libc/arch/sparc/atomic: Makefile.inc atomic_cas.S
Log Message:
Provide the missing __sync_* ops for sparc.
To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 src/common/lib/libc/arch/sparc/atomic/Makefile.inc
cvs rdiff -u -r1.12 -r1.13 src/common/lib/libc/arch/sparc/atomic/atomic_cas.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/common/lib/libc/arch/sparc/atomic/Makefile.inc
diff -u src/common/lib/libc/arch/sparc/atomic/Makefile.inc:1.16 src/common/lib/libc/arch/sparc/atomic/Makefile.inc:1.17
--- src/common/lib/libc/arch/sparc/atomic/Makefile.inc:1.16 Wed Jan 29 13:06:36 2014
+++ src/common/lib/libc/arch/sparc/atomic/Makefile.inc Fri Feb 21 16:21:02 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.16 2014/01/29 13:06:36 martin Exp $
+# $NetBSD: Makefile.inc,v 1.17 2014/02/21 16:21:02 martin Exp $
.include <bsd.own.mk>
@@ -21,7 +21,20 @@ SPARC64DIR= ${.PARSEDIR}/../../sparc64/a
SRCS+= atomic_add_32_cas.c atomic_add_32_nv_cas.c atomic_and_32_cas.c \
atomic_and_32_nv_cas.c atomic_dec_32_cas.c atomic_dec_32_nv_cas.c \
atomic_inc_32_cas.c atomic_inc_32_nv_cas.c atomic_or_32_cas.c \
- atomic_or_32_nv_cas.c atomic_swap_32_cas.c membar_ops.S
+ atomic_or_32_nv_cas.c atomic_swap_32_cas.c membar_ops.S \
+ atomic_cas_32_cas.c atomic_nand_32_cas.c atomic_sub_32_cas.c \
+ atomic_xor_32_cas.c
+. endif
+
+. if ${LIB} == "c"
+SRCS+= atomic_nand_16_cas.c atomic_nand_8_cas.c \
+ atomic_and_16_cas.c atomic_and_8_cas.c \
+ atomic_xor_16_cas.c atomic_xor_8_cas.c \
+ atomic_add_16_cas.c atomic_add_8_cas.c \
+ atomic_cas_16_cas.c atomic_cas_8_cas.c \
+ atomic_sub_16_cas.c atomic_sub_8_cas.c \
+ atomic_or_16_cas.c atomic_or_8_cas.c \
+ atomic_swap_16_cas.c atomic_swap_8_cas.c
. endif
. if (${LIB} == "kern" || ${LIB} == "rump")
Index: src/common/lib/libc/arch/sparc/atomic/atomic_cas.S
diff -u src/common/lib/libc/arch/sparc/atomic/atomic_cas.S:1.12 src/common/lib/libc/arch/sparc/atomic/atomic_cas.S:1.13
--- src/common/lib/libc/arch/sparc/atomic/atomic_cas.S:1.12 Thu Sep 12 15:36:14 2013
+++ src/common/lib/libc/arch/sparc/atomic/atomic_cas.S Fri Feb 21 16:21:02 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: atomic_cas.S,v 1.12 2013/09/12 15:36:14 joerg Exp $ */
+/* $NetBSD: atomic_cas.S,v 1.13 2014/02/21 16:21:02 martin Exp $ */
/*-
* Copyright (c) 2007, 2008 The NetBSD Foundation, Inc.
@@ -147,6 +147,7 @@ ATOMIC_OP_ALIAS(atomic_cas_ulong,_atomic
STRONG_ALIAS(_atomic_cas_ulong,_atomic_cas_32)
ATOMIC_OP_ALIAS(atomic_cas_ptr,_atomic_cas_32)
STRONG_ALIAS(_atomic_cas_ptr,_atomic_cas_32)
+STRONG_ALIAS(__sync_val_compare_and_swap_4,_atomic_cas_32)
ATOMIC_OP_ALIAS(atomic_cas_32_ni,_atomic_cas_32)
STRONG_ALIAS(_atomic_cas_32_ni,_atomic_cas_32)