From: eihrul Date: Fri, 25 Feb 2011 11:50:01 +0000 (+0000) Subject: attempted fix for macosx compilation issues X-Git-Tag: xonotic-v0.5.0~425^2~41 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=803692a12d72942d26186ea0977636766c336d48;p=xonotic%2Fdarkplaces.git attempted fix for macosx compilation issues git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@10862 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/dpsoftrast.c b/dpsoftrast.c index 1d1c9ba0..7d673a5e 100644 --- a/dpsoftrast.c +++ b/dpsoftrast.c @@ -14,7 +14,16 @@ typedef qboolean bool; #define ATOMIC_SIZE 32 #ifdef SSE2_PRESENT - #if defined(__GNUC__) + #if defined(__APPLE__) + #include + #define ALIGN(var) var __attribute__((__aligned__(16))) + #define ATOMIC(var) var __attribute__((__aligned__(32))) + #define MEMORY_BARRIER (_mm_sfence()) + #define ATOMIC_COUNTER volatile int32_t + #define ATOMIC_INCREMENT(counter) (OSAtomicIncrement32Barrier(&(counter)) + #define ATOMIC_DECREMENT(counter) (OSAtomicDecrement32Barrier(&(counter)) + #define ATOMIC_ADD(counter, val) ((void)OSAtomicAdd32Barrier((val), &(counter))) + #elif defined(__GNUC__) #define ALIGN(var) var __attribute__((__aligned__(16))) #define ATOMIC(var) var __attribute__((__aligned__(32))) #define MEMORY_BARRIER (_mm_sfence()) @@ -31,7 +40,7 @@ typedef qboolean bool; #define ATOMIC_COUNTER volatile LONG #define ATOMIC_INCREMENT(counter) (InterlockedIncrement(&(counter))) #define ATOMIC_DECREMENT(counter) (InterlockedDecrement(&(counter))) - #define ATOMIC_ADD(counter, val) (InterlockedExchangeAdd(&(counter), (val))) + #define ATOMIC_ADD(counter, val) ((void)InterlockedExchangeAdd(&(counter), (val))) #endif #endif