2 #include "interp/interp.h"
4 void mono_sdb_single_step_trampoline (void);
7 mono_wasm_specific_trampoline (void)
13 mono_arch_create_specific_trampoline (gpointer arg1
, MonoTrampolineType tramp_type
, MonoMemoryManager
*mem_manager
, guint32
*code_len
)
15 return (gpointer
)mono_wasm_specific_trampoline
;
19 mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type
, MonoTrampInfo
**info
, gboolean aot
)
25 mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot
, MonoTrampInfo
**info
, gboolean aot
)
31 mono_arch_patch_plt_entry (guint8
*code
, gpointer
*got
, host_mgreg_t
*regs
, guint8
*addr
)
37 mono_arch_patch_callsite (guint8
*method_start
, guint8
*orig_code
, guint8
*addr
)
39 g_error ("mono_arch_patch_callsite");
43 mono_arch_get_unbox_trampoline (MonoMethod
*m
, gpointer addr
)
50 mono_arch_get_static_rgctx_trampoline (MonoMemoryManager
*mem_manager
, gpointer arg
, gpointer addr
)
57 interp_to_native_trampoline (void *target_func
, InterpMethodArguments
*margs
)
60 g_assert_not_reached ();
64 mono_arch_get_interp_to_native_trampoline (MonoTrampInfo
**info
)
67 *info
= mono_tramp_info_create ("interp_to_native_trampoline", (guint8
*)interp_to_native_trampoline
, 1, NULL
, NULL
);
68 return (gpointer
)interp_to_native_trampoline
;
72 mono_arch_create_sdb_trampoline (gboolean single_step
, MonoTrampInfo
**info
, gboolean aot
)
78 name
= "sdb_single_step_trampoline";
79 code
= (guint8
*)mono_wasm_single_step_hit
;
81 name
= "sdb_breakpoint_trampoline";
82 code
= (guint8
*)mono_wasm_breakpoint_hit
;
86 *info
= mono_tramp_info_create (name
, code
, 1, NULL
, NULL
);
91 mono_arch_get_call_target (guint8
*code
)
93 g_error ("mono_arch_get_call_target");
97 * mono_arch_get_plt_info_offset:
99 * Return the PLT info offset belonging to the plt entry PLT_ENTRY.
102 mono_arch_get_plt_info_offset (guint8
*plt_entry
, host_mgreg_t
*regs
, guint8
*code
)
105 return *(guint32
*)(plt_entry
+ 6);
109 mono_arch_get_gsharedvt_arg_trampoline (MonoDomain
*domain
, gpointer arg
, gpointer addr
)
116 mono_arch_get_gsharedvt_trampoline (MonoTrampInfo
**info
, gboolean aot
)