} ProxyWrapperInfo;
typedef struct {
- int nursery_bits;
} WriteBarrierWrapperInfo;
typedef struct {
#endif
res = mono_mb_create_method (mb, sig, 16);
info = mono_wrapper_info_create (mb, WRAPPER_SUBTYPE_NONE);
- /* The generated barrier depends on this being the same at runtime */
- info->d.wbarrier.nursery_bits = DEFAULT_NURSERY_BITS;
mono_marshal_set_wrapper_info (res, info);
mono_mb_free (mb);
}
case MONO_WRAPPER_WRITE_BARRIER: {
g_assert (info);
- encode_value (info->d.wbarrier.nursery_bits, p, &p);
break;
}
case MONO_WRAPPER_STELEMREF: {
break;
}
case MONO_WRAPPER_WRITE_BARRIER: {
- int nursery_bits = decode_value (p, &p);
-
ref->method = mono_gc_get_write_barrier ();
- if (ref->method) {
- /* Sanity check */
- info = mono_marshal_get_wrapper_info (ref->method);
- g_assert (info);
- g_assert (info->d.wbarrier.nursery_bits == nursery_bits);
- }
break;
}
case MONO_WRAPPER_STELEMREF: {
#endif
/* Version number of the AOT file format */
-#define MONO_AOT_FILE_VERSION 125
+#define MONO_AOT_FILE_VERSION 126
//TODO: This is x86/amd64 specific.
#define mono_simd_shuffle_mask(a,b,c,d) ((a) | ((b) << 2) | ((c) << 4) | ((d) << 6))