Merge pull request #3140 from esdrubal/syscall_details
[mono-project.git] / mono / mini / arch-stubs.c
blobcad20a06b24c5662be9729fd1cc30f83d87b6a1f
1 #include "mini.h"
3 /* Dummy versions of some arch specific functions to avoid ifdefs at call sites */
5 #ifndef MONO_ARCH_GSHAREDVT_SUPPORTED
7 gboolean
8 mono_arch_gsharedvt_sig_supported (MonoMethodSignature *sig)
10 return FALSE;
13 gpointer
14 mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_sig, MonoMethodSignature *gsharedvt_sig, gboolean gsharedvt_in, gint32 vcall_offset, gboolean calli)
16 g_assert_not_reached ();
17 return NULL;
20 gpointer
21 mono_arch_get_gsharedvt_arg_trampoline (MonoDomain *domain, gpointer arg, gpointer addr)
23 g_assert_not_reached ();
24 return NULL;
27 gpointer
28 mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
30 g_assert_not_reached ();
31 return NULL;
34 #endif
36 #ifndef MONO_ARCH_HAVE_DECOMPOSE_OPTS
37 void
38 mono_arch_decompose_opts (MonoCompile *cfg, MonoInst *ins)
41 #endif
43 #ifndef MONO_ARCH_HAVE_OPCODE_NEEDS_EMULATION
44 gboolean
45 mono_arch_opcode_needs_emulation (MonoCompile *cfg, int opcode)
47 return TRUE;
49 #endif
51 #ifndef MONO_ARCH_HAVE_DECOMPOSE_LONG_OPTS
52 void
53 mono_arch_decompose_long_opts (MonoCompile *cfg, MonoInst *ins)
56 #endif
58 #ifndef MONO_ARCH_HAVE_OP_TAIL_CALL
59 gboolean
60 mono_arch_tail_call_supported (MonoCompile *cfg, MonoMethodSignature *caller_sig, MonoMethodSignature *callee_sig)
62 return mono_metadata_signature_equal (caller_sig, callee_sig) && !MONO_TYPE_ISSTRUCT (callee_sig->ret);
64 #endif