Module Name:    src
Committed By:   skrll
Date:           Wed Jan 29 11:03:04 UTC 2014

Modified Files:
        src/common/lib/libc/arch/hppa/atomic: Makefile.inc atomic_cas_up.S

Log Message:
Provide _atomic_cas_8_up and _atomic_cas_16_up functions


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/common/lib/libc/arch/hppa/atomic/Makefile.inc
cvs rdiff -u -r1.2 -r1.3 src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.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/hppa/atomic/Makefile.inc
diff -u src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.8 src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.9
--- src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.8	Mon Jan 17 07:29:17 2011
+++ src/common/lib/libc/arch/hppa/atomic/Makefile.inc	Wed Jan 29 11:03:04 2014
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.8 2011/01/17 07:29:17 skrll Exp $
+#	$NetBSD: Makefile.inc,v 1.9 2014/01/29 11:03:04 skrll Exp $
 
 .if defined(LIB)
 
@@ -17,7 +17,8 @@ SRCS+=	atomic_add_32_cas.c atomic_add_32
 SRCS+=	atomic_init_testset.c
 SRCS+=	atomic_cas_up.S
 CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_UP
-
+CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_16_UP
+CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_8_UP
 .  endif
 
 .endif

Index: src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S
diff -u src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S:1.2 src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S:1.3
--- src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S:1.2	Sun Jan 16 12:07:26 2011
+++ src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S	Wed Jan 29 11:03:04 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic_cas_up.S,v 1.2 2011/01/16 12:07:26 skrll Exp $	*/
+/*	$NetBSD: atomic_cas_up.S,v 1.3 2014/01/29 11:03:04 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -44,3 +44,27 @@ RAS_END_ASM_HIDDEN(_atomic_cas)
 	bv,n	%r0(%rp)
 
 EXIT(_atomic_cas_up)
+
+LEAF_ENTRY_NOPROFILE(_atomic_cas_16_up)
+	.hidden	_C_LABEL(_atomic_cas_16_up)
+
+RAS_START_ASM_HIDDEN(_atomic_cas_16)
+	ldh	0(%arg0),%ret0
+	comb,<>,n	%arg1, %ret0, 1f
+	sth	%arg2, 0(%arg0)
+RAS_END_ASM_HIDDEN(_atomic_cas_16)
+1:
+	bv,n	%r0(%rp)
+EXIT(_atomic_cas_16_up)
+
+LEAF_ENTRY_NOPROFILE(_atomic_cas_8_up)
+	.hidden	_C_LABEL(_atomic_cas_8_up)
+
+RAS_START_ASM_HIDDEN(_atomic_cas_8)
+	ldb	0(%arg0),%ret0
+	comb,<>,n	%arg1, %ret0, 1f
+	stb	%arg2, 0(%arg0)
+RAS_END_ASM_HIDDEN(_atomic_cas_8)
+1:
+	bv,n	%r0(%rp)
+EXIT(_atomic_cas_8_up)

Reply via email to