Browse Source

visual studio doesn't have __sync operations, but this is not fatal to applications

Samuel Thibault 15 years ago
parent
commit
b210f4c30e
1 changed files with 0 additions and 10 deletions
  1. 0 10
      include/starpu_util.h

+ 0 - 10
include/starpu_util.h

@@ -80,8 +80,6 @@ static inline unsigned starpu_atomic_##name(unsigned *ptr, unsigned value) { \
 #elif defined(STARPU_HAVE_XCHG)
 #elif defined(STARPU_HAVE_XCHG)
 STARPU_ATOMIC_SOMETHING(add, old + value)
 STARPU_ATOMIC_SOMETHING(add, old + value)
 #define STARPU_ATOMIC_ADD(ptr, value) starpu_atomic_add(ptr, value)
 #define STARPU_ATOMIC_ADD(ptr, value) starpu_atomic_add(ptr, value)
-#else
-#error __sync_fetch_and_add is not available
 #endif
 #endif
 
 
 #ifdef STARPU_HAVE_SYNC_FETCH_AND_OR
 #ifdef STARPU_HAVE_SYNC_FETCH_AND_OR
@@ -89,16 +87,12 @@ STARPU_ATOMIC_SOMETHING(add, old + value)
 #elif defined(STARPU_HAVE_XCHG)
 #elif defined(STARPU_HAVE_XCHG)
 STARPU_ATOMIC_SOMETHING(or, old | value)
 STARPU_ATOMIC_SOMETHING(or, old | value)
 #define STARPU_ATOMIC_OR(ptr, value) starpu_atomic_or(ptr, value)
 #define STARPU_ATOMIC_OR(ptr, value) starpu_atomic_or(ptr, value)
-#else
-#error __sync_fetch_and_or is not available
 #endif
 #endif
 
 
 #ifdef STARPU_HAVE_SYNC_BOOL_COMPARE_AND_SWAP
 #ifdef STARPU_HAVE_SYNC_BOOL_COMPARE_AND_SWAP
 #define STARPU_BOOL_COMPARE_AND_SWAP(ptr, old, value)  (__sync_bool_compare_and_swap ((ptr), (old), (value)))
 #define STARPU_BOOL_COMPARE_AND_SWAP(ptr, old, value)  (__sync_bool_compare_and_swap ((ptr), (old), (value)))
 #elif defined(STARPU_HAVE_XCHG)
 #elif defined(STARPU_HAVE_XCHG)
 #define STARPU_BOOL_COMPARE_AND_SWAP(ptr, old, value) (starpu_cmpxchg((ptr), (old), (value)) == (old))
 #define STARPU_BOOL_COMPARE_AND_SWAP(ptr, old, value) (starpu_cmpxchg((ptr), (old), (value)) == (old))
-#else
-#error __sync_bool_compare_and_swap is not available
 #endif
 #endif
 
 
 #ifdef STARPU_HAVE_SYNC_LOCK_TEST_AND_SET
 #ifdef STARPU_HAVE_SYNC_LOCK_TEST_AND_SET
@@ -107,8 +101,6 @@ STARPU_ATOMIC_SOMETHING(or, old | value)
 #elif defined(STARPU_HAVE_XCHG)
 #elif defined(STARPU_HAVE_XCHG)
 #define STARPU_TEST_AND_SET(ptr, value) (starpu_xchg((ptr), (value)))
 #define STARPU_TEST_AND_SET(ptr, value) (starpu_xchg((ptr), (value)))
 #define STARPU_RELEASE(ptr) (starpu_xchg((ptr), 0))
 #define STARPU_RELEASE(ptr) (starpu_xchg((ptr), 0))
-#else
-#error __sync_lock_test_and_set is not available
 #endif
 #endif
 
 
 #ifdef STARPU_HAVE_SYNC_SYNCHRONIZE
 #ifdef STARPU_HAVE_SYNC_SYNCHRONIZE
@@ -119,8 +111,6 @@ STARPU_ATOMIC_SOMETHING(or, old | value)
 #define STARPU_SYNCHRONIZE() __asm__ __volatile__("mfence" ::: "memory")
 #define STARPU_SYNCHRONIZE() __asm__ __volatile__("mfence" ::: "memory")
 #elif defined(__ppc__) || defined(__ppc64__)
 #elif defined(__ppc__) || defined(__ppc64__)
 #define STARPU_SYNCHRONIZE() __asm__ __volatile__("sync" ::: "memory")
 #define STARPU_SYNCHRONIZE() __asm__ __volatile__("sync" ::: "memory")
-#else
-#error __sync_synchronize is not available
 #endif
 #endif
 
 
 #ifdef STARPU_USE_CUDA
 #ifdef STARPU_USE_CUDA