Subversion Repositories Games.Prince of Persia

Rev

Rev 1 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1 Rev 8
Line 1... Line 1...
1
/*
1
/*
2
  Simple DirectMedia Layer
2
  Simple DirectMedia Layer
3
  Copyright (C) 1997-2017 Sam Lantinga <slouken@libsdl.org>
3
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
4
 
4
 
5
  This software is provided 'as-is', without any express or implied
5
  This software is provided 'as-is', without any express or implied
6
  warranty.  In no event will the authors be held liable for any damages
6
  warranty.  In no event will the authors be held liable for any damages
7
  arising from the use of this software.
7
  arising from the use of this software.
8
 
8
 
Line 156... Line 156...
156
extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
156
extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
157
 
157
 
158
#if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
158
#if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
159
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("lwsync" : : : "memory")
159
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("lwsync" : : : "memory")
160
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("lwsync" : : : "memory")
160
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("lwsync" : : : "memory")
-
 
161
#elif defined(__GNUC__) && defined(__aarch64__)
-
 
162
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("dmb ish" : : : "memory")
-
 
163
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("dmb ish" : : : "memory")
161
#elif defined(__GNUC__) && defined(__arm__)
164
#elif defined(__GNUC__) && defined(__arm__)
162
#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__)
165
#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__)
163
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("dmb ish" : : : "memory")
166
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("dmb ish" : : : "memory")
164
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("dmb ish" : : : "memory")
167
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("dmb ish" : : : "memory")
165
#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__)
168
#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__)