From 427d50dc257b8e11844c7e295c56d674a8dfad94 Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Tue, 25 Feb 2014 14:02:11 +0100 Subject: Fix building of JSC for earlier versions of gcc on Mac Since building for Carbon typically uses older versions of gcc on older versions of Mac, then we need to revert 0de22e80ac645afc3793419300d6271d95809196 partially in order to fix this. Since the original code was just a cleanup then this is safe to do so. Change-Id: I5dd8fe99704ffac66ac3384b62849fa8162ca82d Reviewed-by: Simon Hausmann --- src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h index b3ea7d2f2a..9b49db3b7c 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h @@ -71,10 +71,18 @@ #if OS(WINDOWS) && !OS(WINCE) #include +#elif OS(DARWIN) +#include #elif OS(ANDROID) #include #elif OS(QNX) #include +#elif COMPILER(GCC) && !OS(SYMBIAN) +#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2)) +#include +#else +#include +#endif #endif #if USE(PTHREADS) @@ -222,6 +230,12 @@ inline int atomicIncrement(int volatile* addend) { return InterlockedIncrement(r inline int atomicDecrement(int volatile* addend) { return InterlockedDecrement(reinterpret_cast(addend)); } #endif +#elif OS(DARWIN) +#define WTF_USE_LOCKFREE_THREADSAFESHARED 1 + +inline int atomicIncrement(int volatile* addend) { return OSAtomicIncrement32Barrier(const_cast(addend)); } +inline int atomicDecrement(int volatile* addend) { return OSAtomicDecrement32Barrier(const_cast(addend)); } + #elif OS(ANDROID) inline int atomicIncrement(int volatile* addend) { return android_atomic_inc(addend); } -- cgit v1.2.3