From 9c0c82d0d01b0a0d17c2f2e494ff3c83bc3bbd3d Mon Sep 17 00:00:00 2001 From: Joshua Colp <jcolp@digium.com> Date: Tue, 8 Jan 2008 15:26:50 +0000 Subject: [PATCH] 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 --- utils/extconf.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) 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); -- GitLab