alpha_jmp(code, alpha_zero, alpha_at, 0);
g_assert (((char *)code - (char *)buf) <= TRAMPOLINE_SIZE);
- mono_domain_lock (domain);
/*
* FIXME: Changing the size to code - buf causes strange crashes during
* mcs bootstrap.
*/
- real_code = mono_code_manager_reserve (domain->code_mp, TRAMPOLINE_SIZE);
+ real_code = mono_domain_code_reserve (domain, TRAMPOLINE_SIZE);
size = (char *)code - (char *)buf;
- mono_domain_unlock (domain);
memcpy (real_code, buf, size);
g_debug("mono_arch_create_specific_trampoline: Target: %p, Arg1: %p",
real_code, arg1);
- mono_jit_stats.method_trampolines++;
-
if (code_len)
*code_len = size;
/*========================= End of Function ========================*/
void
-mono_arch_nullify_class_init_trampoline (guint8 *code, gssize *regs)
+mono_arch_nullify_class_init_trampoline (guint8 *code, mgreg_t *regs)
{
unsigned int *pcode = (unsigned int *)code;
if (MONO_TYPE_ISSTRUCT (mono_method_signature (m)->ret))
this_reg = 17; //R17
- mono_domain_lock (domain);
- start_code = code = (unsigned int *)mono_code_manager_reserve (domain->code_mp, 32);
- mono_domain_unlock (domain);
+ start_code = code = (unsigned int *)mono_domain_code_reserve (domain, 32);
// Adjust this by size of MonoObject
alpha_addq_(code, this_reg, sizeof(MonoObject), this_reg); // 0
}
void
-mono_arch_nullify_plt_entry (guint8 *code)
+mono_arch_nullify_plt_entry (guint8 *code, mgreg_t *regs)
{
g_assert_not_reached ();
}
void
-mono_arch_patch_plt_entry (guint8 *code, guint8 *addr)
+mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *addr)
{
g_assert_not_reached ();
}
g_assert_not_reached ();
return NULL;
}
-
-guint32
-mono_arch_get_rgctx_lazy_fetch_offset (gpointer *regs)
-{
- /* FIXME: implement! */
- g_assert_not_reached ();
- return 0;
-}