Commit 44903d8aeefcb04f1513291e5e97ff7e3a5d1902

Anonymous Maarten 2023-07-22T21:20:34

SDL_atomic.h: __ARM_ARCH is not always defined for an arm platform e.g. riscos toolchain (cherry picked from commit 8105f1d5b5b83328f4d0017a562674efca821077)

1
2
3
4
5
6
7
8
9
10
11
12
13
diff --git a/include/SDL_atomic.h b/include/SDL_atomic.h
index 8273287..1dd816a 100644
--- a/include/SDL_atomic.h
+++ b/include/SDL_atomic.h
@@ -240,7 +240,7 @@ typedef void (*SDL_KernelMemoryBarrierFunc)();
 /* "REP NOP" is PAUSE, coded for tools that don't know it by that name. */
 #if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))
     #define SDL_CPUPauseInstruction() __asm__ __volatile__("pause\n")  /* Some assemblers can't do REP NOP, so go with PAUSE. */
-#elif (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__)
+#elif (defined(__arm__) && defined(__ARM_ARCH) && __ARM_ARCH >= 7) || defined(__aarch64__)
     #define SDL_CPUPauseInstruction() __asm__ __volatile__("yield" ::: "memory")
 #elif (defined(__powerpc__) || defined(__powerpc64__))
     #define SDL_CPUPauseInstruction() __asm__ __volatile__("or 27,27,27");