#define HAVE_NEON32
#endif
+#if defined(__APPLE__) && defined(__aarch64__)
+#define ASM_SEPARATOR %%
+#else
+#define ASM_SEPARATOR ;
+#endif
+
/* global function/external symbol */
-#ifndef __MACH__
+#ifndef __APPLE__
#define ESYM(name) name
#define 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) \
- .globl ESYM(name); \
- name: \
+ name: ASM_SEPARATOR \
+ .globl ESYM(name) ASM_SEPARATOR \
ESYM(name)
+#define ESIZE(name_, size_)
+#define EOBJECT(name_)
+
// r7 is preserved, but add it for EABI alignment..
#define EXTRA_UNSAVED_REGS r7, r9,