cdrom: change pause timing again
[pcsx_rearmed.git] / include / arm_features.h
index f35e0b7..9f51ab8 100644 (file)
 
 #endif
 
 
 #endif
 
-/* no need for HAVE_NEON - GCC defines __ARM_NEON__ consistently */
+/* gcc defines __ARM_NEON__ consistently for 32bit, but apple clang defines it for 64bit also... */
+#if defined(HAVE_ARMV7) && defined(__ARM_NEON__)
+#define HAVE_NEON32
+#endif
+
+#if defined(__APPLE__) && defined(__aarch64__)
+#define ASM_SEPARATOR %%
+#else
+#define ASM_SEPARATOR ;
+#endif
 
 /* global function/external symbol */
 
 /* global function/external symbol */
-#ifndef __MACH__
+#ifndef __APPLE__
 #define ESYM(name) name
 
 #define FUNCTION(name) \
 #define ESYM(name) name
 
 #define FUNCTION(name) \
   .type name, %function; \
   name
 
   .type name, %function; \
   name
 
+#define ESIZE(name_, size_) \
+  .size name_, size_
+
+#define EOBJECT(name_) \
+  .type name_, %object
+
 #define EXTRA_UNSAVED_REGS
 
 #else
 #define ESYM(name) _##name
 
 #define FUNCTION(name) \
 #define EXTRA_UNSAVED_REGS
 
 #else
 #define ESYM(name) _##name
 
 #define FUNCTION(name) \
-  .globl ESYM(name); \
-  name: \
+  name: ASM_SEPARATOR \
+  .globl ESYM(name) ASM_SEPARATOR \
   ESYM(name)
 
   ESYM(name)
 
+#define ESIZE(name_, size_)
+#define EOBJECT(name_)
+
 // r7 is preserved, but add it for EABI alignment..
 #define EXTRA_UNSAVED_REGS r7, r9,
 
 #endif
 
 // r7 is preserved, but add it for EABI alignment..
 #define EXTRA_UNSAVED_REGS r7, r9,
 
 #endif
 
+#if defined(__MACH__) || defined(__PIC__)
+#define TEXRELS_FORBIDDEN
+#endif
+
 #endif /* __ARM_FEATURES_H__ */
 #endif /* __ARM_FEATURES_H__ */