include: Fix __dmb declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
3f951cbe72
commit
e3708c2c79
|
@ -22,6 +22,46 @@ static inline void __cpuid(int info[4], int ax)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef __aarch64__
|
||||
typedef enum _tag_ARM64INTR_BARRIER_TYPE
|
||||
{
|
||||
_ARM64_BARRIER_OSHLD = 0x1,
|
||||
_ARM64_BARRIER_OSHST = 0x2,
|
||||
_ARM64_BARRIER_OSH = 0x3,
|
||||
_ARM64_BARRIER_NSHLD = 0x5,
|
||||
_ARM64_BARRIER_NSHST = 0x6,
|
||||
_ARM64_BARRIER_NSH = 0x7,
|
||||
_ARM64_BARRIER_ISHLD = 0x9,
|
||||
_ARM64_BARRIER_ISHST = 0xa,
|
||||
_ARM64_BARRIER_ISH = 0xb,
|
||||
_ARM64_BARRIER_LD = 0xd,
|
||||
_ARM64_BARRIER_ST = 0xe,
|
||||
_ARM64_BARRIER_SY = 0xf
|
||||
} _ARM64INTR_BARRIER_TYPE;
|
||||
#endif
|
||||
|
||||
#ifdef __arm__
|
||||
typedef enum _tag_ARMINTR_BARRIER_TYPE
|
||||
{
|
||||
_ARM_BARRIER_OSHST = 0x2,
|
||||
_ARM_BARRIER_OSH = 0x3,
|
||||
_ARM_BARRIER_NSHST = 0x6,
|
||||
_ARM_BARRIER_NSH = 0x7,
|
||||
_ARM_BARRIER_ISHST = 0xa,
|
||||
_ARM_BARRIER_ISH = 0xb,
|
||||
_ARM_BARRIER_ST = 0xe,
|
||||
_ARM_BARRIER_SY = 0xf
|
||||
} _ARMINTR_BARRIER_TYPE;
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER) && (defined(__arm__) || defined(__aarch64__))
|
||||
|
||||
void __dmb(unsigned int);
|
||||
|
||||
#pragma intrinsic(__dmb)
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -32,6 +32,11 @@
|
|||
#endif
|
||||
|
||||
|
||||
#if defined(_MSC_VER) && (defined(__arm__) || defined(__aarch64__))
|
||||
#include <intrin.h>
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
@ -7035,10 +7040,6 @@ static FORCEINLINE void MemoryBarrier(void)
|
|||
|
||||
#elif defined(__arm__)
|
||||
|
||||
#pragma intrinsic(__dmb)
|
||||
|
||||
void __dmb(void);
|
||||
|
||||
static FORCEINLINE void MemoryBarrier(void)
|
||||
{
|
||||
__dmb(_ARM_BARRIER_SY);
|
||||
|
@ -7046,10 +7047,6 @@ static FORCEINLINE void MemoryBarrier(void)
|
|||
|
||||
#elif defined(__aarch64__)
|
||||
|
||||
#pragma intrinsic(__dmb)
|
||||
|
||||
void __dmb(void);
|
||||
|
||||
static FORCEINLINE void MemoryBarrier(void)
|
||||
{
|
||||
__dmb(_ARM64_BARRIER_SY);
|
||||
|
|
Loading…
Reference in New Issue