-/*
+/**
+ * \file
* Copyright 2011 Xamarin Inc
* Licensed under the MIT license. See LICENSE file in the project root for full license information.
*/
guint8 reg;
ArgStorage storage;
/* RegTypeStructByVal */
- gint32 struct_size;
+ gint32 struct_size, align;
guint8 size : 4; /* 1, 2, 4, 8, or regs used by RegTypeStructByVal */
} ArgInfo;
#define MONO_ARCH_HAVE_SETUP_ASYNC_CALLBACK 1
#define MONO_ARCH_HAVE_CONTEXT_SET_INT_REG 1
#define MONO_ARCH_HAVE_HANDLER_BLOCK_GUARD 1
+#ifndef TARGET_IOS
+#define MONO_ARCH_HAVE_HANDLER_BLOCK_GUARD_AOT 1
+#endif
#define MONO_ARCH_HAVE_SETUP_RESUME_FROM_SIGNAL_HANDLER_CTX 1
#define MONO_ARCH_GSHAREDVT_SUPPORTED 1
#define MONO_ARCH_HAVE_GENERAL_RGCTX_LAZY_FETCH_TRAMPOLINE 1
#define MONO_ARCH_HAVE_SDB_TRAMPOLINES 1
#define MONO_ARCH_HAVE_PATCH_CODE_NEW 1
#define MONO_ARCH_HAVE_OP_GENERIC_CLASS_INIT 1
-#define MONO_ARCH_HAVE_GET_TLS_TRAMP 1
+#define MONO_ARCH_HAVE_INIT_LMF_EXT 1
-#define MONO_ARCH_HAVE_TLS_GET (mono_arm_have_tls_get ())
-#define MONO_ARCH_HAVE_TLS_GET_REG 1
-
-#ifdef TARGET_WATCHOS
+#if defined(TARGET_WATCHOS) || (defined(__linux__) && !defined(TARGET_ANDROID))
#define MONO_ARCH_DISABLE_HW_TRAPS 1
#define MONO_ARCH_HAVE_UNWIND_BACKTRACE 1
#endif
gboolean
mono_arm_thumb_supported (void);
+gboolean
+mono_arm_eabi_supported (void);
+
+int
+mono_arm_i8_align (void);
+
GSList*
mono_arm_get_exception_trampolines (gboolean aot);
gboolean
mono_arm_is_hard_float (void);
-gboolean
-mono_arm_have_tls_get (void);
-
void
mono_arm_unaligned_stack (MonoMethod *method);
+gpointer
+mono_arm_handler_block_trampoline_helper (gpointer *ptr);
+
+/* MonoJumpInfo **ji */
+guint8*
+mono_arm_emit_aotconst (gpointer ji, guint8 *code, guint8 *buf, int dreg, int patch_type, gconstpointer data);
+
CallInfo*
mono_arch_get_call_info (MonoMemPool *mp, MonoMethodSignature *sig);