#include "metadata/sgen-gc.h"
#include "metadata/sgen-protocol.h"
#include "metadata/profiler-private.h"
+#include "metadata/marshal.h"
+#include "metadata/method-builder.h"
#include "utils/mono-memory-model.h"
#include "utils/mono-counters.h"
#define ALIGN_UP SGEN_ALIGN_UP
+#define ALLOC_ALIGN SGEN_ALLOC_ALIGN
+#define ALLOC_ALIGN_BITS SGEN_ALLOC_ALIGN_BITS
+#define MAX_SMALL_OBJ_SIZE SGEN_MAX_SMALL_OBJ_SIZE
+#define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
+
+#define OPDEF(a,b,c,d,e,f,g,h,i,j) \
+ a = i,
+
+enum {
+#include "mono/cil/opcode.def"
+ CEE_LAST
+};
+
+#undef OPDEF
#ifdef HEAVY_STATISTICS
static long long stat_objects_alloced = 0;
*/
//#define SGEN_BINARY_PROTOCOL
+/*
+ * Define this and use the "xdomain-checks" MONO_GC_DEBUG option to
+ * have cross-domain checks in the write barrier.
+ */
+//#define XDOMAIN_CHECKS_IN_WBARRIER
+
+#ifndef SGEN_BINARY_PROTOCOL
+#ifndef HEAVY_STATISTICS
+#define MANAGED_ALLOCATION
+#ifndef XDOMAIN_CHECKS_IN_WBARRIER
+#define MANAGED_WBARRIER
+#endif
+#endif
+#endif
+
/*
* Maximum level of debug to enable on this build.
* Making this a static variable enables us to put logging in a lot of places.
#endif
}
-/*
- * Define this and use the "xdomain-checks" MONO_GC_DEBUG option to
- * have cross-domain checks in the write barrier.
- */
-//#define XDOMAIN_CHECKS_IN_WBARRIER
-
-#ifndef SGEN_BINARY_PROTOCOL
-#ifndef HEAVY_STATISTICS
-#define MANAGED_ALLOCATION
-#ifndef XDOMAIN_CHECKS_IN_WBARRIER
-#define MANAGED_WBARRIER
-#endif
-#endif
-#endif
-
static gboolean
is_ip_in_managed_allocator (MonoDomain *domain, gpointer ip);