Author: akhaldi
Date: Sun Mar 2 20:42:26 2014
New Revision: 62389
URL:
http://svn.reactos.org/svn/reactos?rev=62389&view=rev
Log:
[CRT/INTRIN_X86]
* In Clang these are built-ins.
Modified:
trunk/reactos/include/crt/mingw32/intrin_x86.h
Modified: trunk/reactos/include/crt/mingw32/intrin_x86.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/mingw32/intrin…
==============================================================================
--- trunk/reactos/include/crt/mingw32/intrin_x86.h [iso-8859-1] (original)
+++ trunk/reactos/include/crt/mingw32/intrin_x86.h [iso-8859-1] Sun Mar 2 20:42:26 2014
@@ -186,10 +186,12 @@
return __sync_val_compare_and_swap(Destination, Comperand, Exchange);
}
+#ifndef __clang__
__INTRIN_INLINE long _InterlockedCompareExchange(volatile long * const Destination, const
long Exchange, const long Comperand)
{
return __sync_val_compare_and_swap(Destination, Comperand, Exchange);
}
+#endif
__INTRIN_INLINE void * _InterlockedCompareExchangePointer(void * volatile * const
Destination, void * const Exchange, void * const Comperand)
{
@@ -224,10 +226,12 @@
return __sync_fetch_and_add(Addend, Value);
}
+#ifndef __clang__
__INTRIN_INLINE long _InterlockedExchangeAdd(volatile long * const Addend, const long
Value)
{
return __sync_fetch_and_add(Addend, Value);
}
+#endif
#if defined(_M_AMD64)
__INTRIN_INLINE long long _InterlockedExchangeAdd64(volatile long long * const Addend,
const long long Value)
@@ -302,6 +306,7 @@
}
#endif
+#ifndef __clang__
__INTRIN_INLINE long _InterlockedDecrement(volatile long * const lpAddend)
{
return __sync_sub_and_fetch(lpAddend, 1);
@@ -311,6 +316,7 @@
{
return __sync_add_and_fetch(lpAddend, 1);
}
+#endif
__INTRIN_INLINE short _InterlockedDecrement16(volatile short * const lpAddend)
{