CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Sat Feb 22 10:23:25 UTC 2014 Modified Files: src/common/lib/libc/arch/hppa/atomic: Makefile.inc Log Message: Add the missing __sync_* ops to libc To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/common/lib/libc/arch/hppa/atomic/Makefile.inc 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.11 src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.12 --- src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.11 Sat Feb 22 08:24:27 2014 +++ src/common/lib/libc/arch/hppa/atomic/Makefile.inc Sat Feb 22 10:23:24 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.11 2014/02/22 08:24:27 skrll Exp $ +# $NetBSD: Makefile.inc,v 1.12 2014/02/22 10:23:24 skrll Exp $ .if defined(LIB) @@ -24,4 +24,14 @@ CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_16_UP CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_8_UP . endif +.if defined(LIB) && ${LIB} == "c" +SRCS+= atomic_xor_32_cas.c atomic_xor_16_cas.c atomic_xor_8_cas.c \ + atomic_sub_32_cas.c atomic_sub_16_cas.c atomic_sub_8_cas.c \ + atomic_nand_32_cas.c atomic_nand_16_cas.c atomic_nand_8_cas.c \ + atomic_or_16_cas.c atomic_or_8_cas.c\ + atomic_and_16_cas.c atomic_and_8_cas.c\ + atomic_add_16_cas.c atomic_add_8_cas.c\ + atomic_swap_16_cas.c atomic_swap_8_cas.c \ + atomic_cas_32_cas.c atomic_cas_16_cas.c atomic_cas_8_cas.c +.endif .endif
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Sat Feb 22 08:24:27 UTC 2014 Modified Files: src/common/lib/libc/arch/hppa/atomic: Makefile.inc Log Message: Another layout change To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/common/lib/libc/arch/hppa/atomic/Makefile.inc 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.10 src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.11 --- src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.10 Sat Feb 22 08:21:03 2014 +++ src/common/lib/libc/arch/hppa/atomic/Makefile.inc Sat Feb 22 08:24:27 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.10 2014/02/22 08:21:03 skrll Exp $ +# $NetBSD: Makefile.inc,v 1.11 2014/02/22 08:24:27 skrll Exp $ .if defined(LIB) @@ -9,8 +9,8 @@ SRCS+= atomic_add_32_cas.c atomic_add_32 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 \ + atomic_or_32_cas.c atomic_or_32_nv_cas.c \ + atomic_swap_32_cas.c \ membar_ops_nop.c . endif
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Sat Feb 22 08:21:04 UTC 2014 Modified Files: src/common/lib/libc/arch/hppa/atomic: Makefile.inc Log Message: Layout changes - no functional change. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/common/lib/libc/arch/hppa/atomic/Makefile.inc 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.9 src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.10 --- src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.9 Wed Jan 29 11:03:04 2014 +++ src/common/lib/libc/arch/hppa/atomic/Makefile.inc Sat Feb 22 08:21:03 2014 @@ -1,14 +1,17 @@ -# $NetBSD: Makefile.inc,v 1.9 2014/01/29 11:03:04 skrll Exp $ +# $NetBSD: Makefile.inc,v 1.10 2014/02/22 08:21:03 skrll Exp $ .if defined(LIB) . if (${LIB} == "kern" || ${LIB} == "c" || ${LIB} == "pthread" || \ ${LIB} == "rump") -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_nop.c +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_nop.c . endif
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Wed Jan 29 11:34:25 UTC 2014 Modified Files: src/common/lib/libc/arch/hppa/atomic: atomic_cas_up.S Log Message: Copyright To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 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/atomic_cas_up.S diff -u 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.4 --- src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S:1.3 Wed Jan 29 11:03:04 2014 +++ src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S Wed Jan 29 11:34:25 2014 @@ -1,7 +1,7 @@ -/* $NetBSD: atomic_cas_up.S,v 1.3 2014/01/29 11:03:04 skrll Exp $ */ +/* $NetBSD: atomic_cas_up.S,v 1.4 2014/01/29 11:34:25 skrll Exp $ */ /*- - * Copyright (c) 2008 The NetBSD Foundation, Inc. + * Copyright (c) 2008, 2014 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation
CVS commit: src/common/lib/libc/arch/hppa/atomic
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)
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Mon Jan 17 07:40:21 UTC 2011 Added Files: src/common/lib/libc/arch/hppa/atomic: membar_ops.S Log Message: Add an membar_ops.S - not used currently. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/common/lib/libc/arch/hppa/atomic/membar_ops.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/common/lib/libc/arch/hppa/atomic/membar_ops.S diff -u /dev/null src/common/lib/libc/arch/hppa/atomic/membar_ops.S:1.1 --- /dev/null Mon Jan 17 07:40:21 2011 +++ src/common/lib/libc/arch/hppa/atomic/membar_ops.S Mon Jan 17 07:40:21 2011 @@ -0,0 +1,67 @@ +/* $NetBSD: membar_ops.S,v 1.1 2011/01/17 07:40:21 skrll Exp $ */ + +/*- + * Copyright (c) 2007 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Jason R. Thorpe, and by Andrew Doran. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include "atomic_op_asm.h" + +RCSID("$NetBSD: membar_ops.S,v 1.1 2011/01/17 07:40:21 skrll Exp $") + + .text + +LEAF_ENTRY(_membar_consumer) + sync + nop + nop + nop + nop + nop + bv %r0(%rp) + nop +EXIT(_membar_consumer) + +LEAF_ENTRY(_membar_producer) + sync + nop + nop + nop + nop + nop + bv %r0(%rp) + nop +EXIT(_membar_producer) + +ATOMIC_OP_ALIAS(membar_producer,_membar_producer) +ATOMIC_OP_ALIAS(membar_consumer,_membar_consumer) +ATOMIC_OP_ALIAS(membar_enter,_membar_consumer) +STRONG_ALIAS(_membar_enter,_membar_consumer) +ATOMIC_OP_ALIAS(membar_exit,_membar_producer) +STRONG_ALIAS(_membar_exit,_membar_producer) +ATOMIC_OP_ALIAS(membar_sync,_membar_producer) +STRONG_ALIAS(_membar_sync,_membar_producer)
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Mon Jan 17 07:29:18 UTC 2011 Modified Files: src/common/lib/libc/arch/hppa/atomic: Makefile.inc Log Message: Tweak layout - no functional change. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/common/lib/libc/arch/hppa/atomic/Makefile.inc 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.7 src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.8 --- src/common/lib/libc/arch/hppa/atomic/Makefile.inc:1.7 Tue Jan 6 13:23:31 2009 +++ src/common/lib/libc/arch/hppa/atomic/Makefile.inc Mon Jan 17 07:29:17 2011 @@ -1,19 +1,23 @@ -# $NetBSD: Makefile.inc,v 1.7 2009/01/06 13:23:31 mjf Exp $ +# $NetBSD: Makefile.inc,v 1.8 2011/01/17 07:29:17 skrll Exp $ -.if defined(LIB) && (${LIB} == "kern" || ${LIB} == "c" || ${LIB} == "pthread" \ - || ${LIB} == "rump") +.if defined(LIB) + +. if (${LIB} == "kern" || ${LIB} == "c" || ${LIB} == "pthread" || \ +${LIB} == "rump") 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_nop.c -.endif +. endif -.if defined(LIB) && (${LIB} == "c" || ${LIB} == "pthread") +. if (${LIB} == "c" || ${LIB} == "pthread") SRCS+= atomic_init_testset.c SRCS+= atomic_cas_up.S CPPFLAGS+= -D__HAVE_ASM_ATOMIC_CAS_UP +. endif + .endif
CVS commit: src/common/lib/libc/arch/hppa/atomic
Module Name:src Committed By: skrll Date: Sun Jan 16 12:07:27 UTC 2011 Modified Files: src/common/lib/libc/arch/hppa/atomic: atomic_cas_up.S Log Message: Fix RCSId. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 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/atomic_cas_up.S diff -u src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S:1.1 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.1 Mon Aug 11 21:54:51 2008 +++ src/common/lib/libc/arch/hppa/atomic/atomic_cas_up.S Sun Jan 16 12:07:26 2011 @@ -1,4 +1,4 @@ -/* $NetBSD $ */ +/* $NetBSD: atomic_cas_up.S,v 1.2 2011/01/16 12:07:26 skrll Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc.