From: Joshua Colp Date: Tue, 8 Jan 2008 15:26:50 +0000 (+0000) Subject: Make ast_atomic_fetchadd_int_slow magically appear in extconf. X-Git-Tag: 1.6.0-beta1~3^2~163 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c0c82d0d01b0a0d17c2f2e494ff3c83bc3bbd3d;p=thirdparty%2Fasterisk.git Make ast_atomic_fetchadd_int_slow magically appear in extconf. (closes issue #11703) Reported by: dmartin git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97041 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/utils/extconf.c b/utils/extconf.c index a64258cd9d..c5b9fbdea4 100644 --- a/utils/extconf.c +++ b/utils/extconf.c @@ -1756,8 +1756,6 @@ static void __attribute__ ((destructor)) fini_##rwlock(void) \ * as ast_atomic_fetchadd_int_slow() */ -int ast_atomic_fetchadd_int_slow(volatile int *p, int v); - #if defined(HAVE_OSX_ATOMICS) #include "libkern/OSAtomic.h" #endif @@ -1791,7 +1789,14 @@ AST_INLINE_API(int ast_atomic_fetchadd_int(volatile int *p, int v), : "m" (*p)); /* 2 */ return (v); }) -#else /* low performance version in utils.c */ +#else +static int ast_atomic_fetchadd_int_slow(volatile int *p, int v) +{ + int ret; + ret = *p; + *p += v; + return ret; +} AST_INLINE_API(int ast_atomic_fetchadd_int(volatile int *p, int v), { return ast_atomic_fetchadd_int_slow(p, v);