From 803692a12d72942d26186ea0977636766c336d48 Mon Sep 17 00:00:00 2001 From: eihrul Date: Fri, 25 Feb 2011 11:50:01 +0000 Subject: [PATCH] attempted fix for macosx compilation issues git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@10862 d7cf8633-e32d-0410-b094-e92efae38249 --- dpsoftrast.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) 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 -- 2.39.2