Module Name: src Committed By: joerg Date: Wed Jan 29 15:59:12 UTC 2014
Modified Files: src/common/lib/libc/atomic: atomic_add_32_cas.c atomic_and_32_cas.c atomic_or_32_cas.c Log Message: Fix up the remaining __sync_* functions to build with Clang on ARM. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/common/lib/libc/atomic/atomic_add_32_cas.c cvs rdiff -u -r1.7 -r1.8 src/common/lib/libc/atomic/atomic_and_32_cas.c \ src/common/lib/libc/atomic/atomic_or_32_cas.c 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/atomic/atomic_add_32_cas.c diff -u src/common/lib/libc/atomic/atomic_add_32_cas.c:1.6 src/common/lib/libc/atomic/atomic_add_32_cas.c:1.7 --- src/common/lib/libc/atomic/atomic_add_32_cas.c:1.6 Mon Jan 27 18:29:47 2014 +++ src/common/lib/libc/atomic/atomic_add_32_cas.c Wed Jan 29 15:59:11 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: atomic_add_32_cas.c,v 1.6 2014/01/27 18:29:47 matt Exp $ */ +/* $NetBSD: atomic_add_32_cas.c,v 1.7 2014/01/29 15:59:11 joerg Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,10 +33,11 @@ #include <sys/atomic.h> -uint32_t __sync_fetch_and_add_4(volatile uint32_t *, int32_t); +uint32_t fetch_and_add_4(volatile uint32_t *, uint32_t, ...) + asm("__sync_fetch_and_add_4"); uint32_t -__sync_fetch_and_add_4(volatile uint32_t *addr, int32_t val) +fetch_and_add_4(volatile uint32_t *addr, uint32_t val, ...) { uint32_t old, new; @@ -50,7 +51,7 @@ __sync_fetch_and_add_4(volatile uint32_t void atomic_add_32(volatile uint32_t *addr, int32_t val) { - (void) __sync_fetch_and_add_4(addr, val); + (void) fetch_and_add_4(addr, val); } #undef atomic_add_32 Index: src/common/lib/libc/atomic/atomic_and_32_cas.c diff -u src/common/lib/libc/atomic/atomic_and_32_cas.c:1.7 src/common/lib/libc/atomic/atomic_and_32_cas.c:1.8 --- src/common/lib/libc/atomic/atomic_and_32_cas.c:1.7 Mon Jan 27 18:36:52 2014 +++ src/common/lib/libc/atomic/atomic_and_32_cas.c Wed Jan 29 15:59:11 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: atomic_and_32_cas.c,v 1.7 2014/01/27 18:36:52 matt Exp $ */ +/* $NetBSD: atomic_and_32_cas.c,v 1.8 2014/01/29 15:59:11 joerg Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,10 +33,11 @@ #include <sys/atomic.h> -uint32_t __sync_fetch_and_and_4(volatile uint32_t *, uint32_t); +uint32_t fetch_and_and_4(volatile uint32_t *, uint32_t, ...) + asm("__sync_fetch_and_and_4"); uint32_t -__sync_fetch_and_and_4(volatile uint32_t *addr, uint32_t val) +fetch_and_and_4(volatile uint32_t *addr, uint32_t val, ...) { uint32_t old, new; @@ -50,7 +51,7 @@ __sync_fetch_and_and_4(volatile uint32_t void atomic_and_32(volatile uint32_t *addr, uint32_t val) { - (void) __sync_fetch_and_and_4(addr, val); + (void) fetch_and_and_4(addr, val); } #undef atomic_and_32 Index: src/common/lib/libc/atomic/atomic_or_32_cas.c diff -u src/common/lib/libc/atomic/atomic_or_32_cas.c:1.7 src/common/lib/libc/atomic/atomic_or_32_cas.c:1.8 --- src/common/lib/libc/atomic/atomic_or_32_cas.c:1.7 Mon Jan 27 18:36:52 2014 +++ src/common/lib/libc/atomic/atomic_or_32_cas.c Wed Jan 29 15:59:11 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: atomic_or_32_cas.c,v 1.7 2014/01/27 18:36:52 matt Exp $ */ +/* $NetBSD: atomic_or_32_cas.c,v 1.8 2014/01/29 15:59:11 joerg Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -33,10 +33,11 @@ #include <sys/atomic.h> -uint32_t __sync_fetch_and_or_4(volatile uint32_t *, uint32_t); +uint32_t fetch_and_or_4(volatile uint32_t *, uint32_t, ...) + asm("__sync_fetch_and_or_4"); uint32_t -__sync_fetch_and_or_4(volatile uint32_t *addr, uint32_t val) +fetch_and_or_4(volatile uint32_t *addr, uint32_t val, ...) { uint32_t old, new; @@ -50,7 +51,7 @@ __sync_fetch_and_or_4(volatile uint32_t void atomic_or_32(volatile uint32_t *addr, uint32_t val) { - (void) __sync_fetch_and_or_4(addr, val); + (void) fetch_and_or_4(addr, val); } #undef atomic_or_32