diff --git a/src/gba/GBAcpu.h b/src/gba/GBAcpu.h
index 5386c0ac..9476bf58 100644
--- a/src/gba/GBAcpu.h
+++ b/src/gba/GBAcpu.h
@@ -4,16 +4,16 @@
 extern int armExecute();
 extern int thumbExecute();
 
-#ifdef __GNUC__
-#ifndef __APPLE__
+#if defined(__i386__) || defined(__x86_64__)
 #define INSN_REGPARM __attribute__((regparm(1)))
 #else
 #define INSN_REGPARM /*nothing*/
 #endif
+
+#ifdef __GNUC__
 #define LIKELY(x) __builtin_expect(!!(x), 1)
 #define UNLIKELY(x) __builtin_expect(!!(x), 0)
 #else
-#define INSN_REGPARM /*nothing*/
 #define LIKELY(x) (x)
 #define UNLIKELY(x) (x)
 #endif