/* next byte */
guint has_finalize_inited : 1; /* has_finalize is initialized */
guint fields_inited : 1; /* fields is initialized */
- guint instance_size_inited : 1; /* instance_size is initialized */
guint8 exception_type; /* MONO_EXCEPTION_* */
* - has_static_refs (same, but for static fields)
* - instance_size (size of the object in memory)
* - class_size (size needed for the static fields)
- * - instance_size_inited (flag set when the instance_size is set)
+ * - size_inited (flag set when the instance_size is set)
*
* LOCKING: this is supposed to be called with the loader lock held.
*/
field->offset &= ~(align - 1);
class->sizes.class_size = field->offset + size;
}
-
- /* size_inited is also set in mono_class_setup_fields () so it cannot be used to check whenever instance_size was set */
- mono_memory_barrier ();
- class->instance_size_inited = 1;
}
static MonoMethod*
gint32
mono_class_instance_size (MonoClass *klass)
{
- if (!klass->instance_size_inited)
+ if (!klass->size_inited)
mono_class_init (klass);
return klass->instance_size;