Also increase the initial size of the class rgctx to 32 from 16, the first
level table frequently overflows, and the entries in the second level table
are slower to access, esp. from llvmonly code which contains an inline
fetch for the first level table.
static inline int
class_rgctx_array_size (int n)
{
- return 16 << n;
+ return 32 << n;
}
static inline int
MonoRuntimeGenericContext *orig_rgctx;
int rgctx_index;
gboolean do_free;
- MonoJitMemoryManager *jit_mm = jit_mm_for_class (class_vtable->klass);
+ MonoJitMemoryManager *jit_mm;
/*
* Need a fastpath since this is called without trampolines in llvmonly mode.
}
rgctx = orig_rgctx;
+ jit_mm = jit_mm_for_class (class_vtable->klass);
+
class_context = mono_class_is_ginst (klass) ? &mono_class_get_generic_class (klass)->context : NULL;
MonoGenericContext context = { class_context ? class_context->class_inst : NULL, method_inst };