Author: mprobst
Date: 2007-06-13 04:03:09 -0400 (Wed, 13 Jun 2007)
New Revision: 79384
Modified:
trunk/mono/mono/metadata/ChangeLog
trunk/mono/mono/metadata/class-internals.h
trunk/mono/mono/mini/ChangeLog
trunk/mono/mono/mini/mini.c
trunk/mono/mono/utils/ChangeLog
trunk/mono/mono/utils/mono-codeman.c
Log:
2007-06-13 Mark Probst <[EMAIL PROTECTED]>
* class-internals.h (MonoStats): Added stats entries for dynamic
code allocations.
2007-06-13 Mark Probst <[EMAIL PROTECTED]>
* mini.c (print_jit_stats): Output dynamic code allocation stats.
2007-06-13 Mark Probst <[EMAIL PROTECTED]>
* mono-codeman.c (mono_code_manager_reserve): Gather dynamic code
allocation stats.
Modified: trunk/mono/mono/metadata/ChangeLog
===================================================================
--- trunk/mono/mono/metadata/ChangeLog 2007-06-13 06:28:05 UTC (rev 79383)
+++ trunk/mono/mono/metadata/ChangeLog 2007-06-13 08:03:09 UTC (rev 79384)
@@ -1,3 +1,8 @@
+2007-06-13 Mark Probst <[EMAIL PROTECTED]>
+
+ * class-internals.h (MonoStats): Added stats entries for dynamic
+ code allocations.
+
2007-06-12 Zoltan Varga <[EMAIL PROTECTED]>
* loader.c (mono_free_method): Free header->locals and header->clauses.
Modified: trunk/mono/mono/metadata/class-internals.h
===================================================================
--- trunk/mono/mono/metadata/class-internals.h 2007-06-13 06:28:05 UTC (rev
79383)
+++ trunk/mono/mono/metadata/class-internals.h 2007-06-13 08:03:09 UTC (rev
79384)
@@ -527,6 +527,9 @@
gulong inflated_method_count_2;
gulong inflated_type_count;
gulong generics_metadata_size;
+ gulong dynamic_code_alloc_count;
+ gulong dynamic_code_bytes_count;
+ gulong dynamic_code_frees_count;
gboolean enabled;
} MonoStats;
Modified: trunk/mono/mono/mini/ChangeLog
===================================================================
--- trunk/mono/mono/mini/ChangeLog 2007-06-13 06:28:05 UTC (rev 79383)
+++ trunk/mono/mono/mini/ChangeLog 2007-06-13 08:03:09 UTC (rev 79384)
@@ -1,3 +1,7 @@
+2007-06-13 Mark Probst <[EMAIL PROTECTED]>
+
+ * mini.c (print_jit_stats): Output dynamic code allocation stats.
+
2007-06-10 Sanghyeon Seo <[EMAIL PROTECTED]>
* mini-exceptions.c: Generate a method profile leave event during
Modified: trunk/mono/mono/mini/mini.c
===================================================================
--- trunk/mono/mono/mini/mini.c 2007-06-13 06:28:05 UTC (rev 79383)
+++ trunk/mono/mono/mini/mini.c 2007-06-13 08:03:09 UTC (rev 79384)
@@ -12033,6 +12033,10 @@
g_print ("Inflated types: %ld\n",
mono_stats.inflated_type_count);
g_print ("Generics metadata size: %ld\n",
mono_stats.generics_metadata_size);
+ g_print ("Dynamic code allocs: %ld\n",
mono_stats.dynamic_code_alloc_count);
+ g_print ("Dynamic code bytes: %ld\n",
mono_stats.dynamic_code_bytes_count);
+ g_print ("Dynamic code frees: %ld\n",
mono_stats.dynamic_code_frees_count);
+
if (mono_use_security_manager) {
g_print ("\nDecl security check : %ld\n",
mono_jit_stats.cas_declsec_check);
g_print ("LinkDemand (user) : %ld\n",
mono_jit_stats.cas_linkdemand);
Modified: trunk/mono/mono/utils/ChangeLog
===================================================================
--- trunk/mono/mono/utils/ChangeLog 2007-06-13 06:28:05 UTC (rev 79383)
+++ trunk/mono/mono/utils/ChangeLog 2007-06-13 08:03:09 UTC (rev 79384)
@@ -1,3 +1,8 @@
+2007-06-13 Mark Probst <[EMAIL PROTECTED]>
+
+ * mono-codeman.c (mono_code_manager_reserve): Gather dynamic code
+ allocation stats.
+
2007-06-06 Mark Probst <[EMAIL PROTECTED]>
* mono-internal-hash.c: Fixed a bug in the remove entry code.
Modified: trunk/mono/mono/utils/mono-codeman.c
===================================================================
--- trunk/mono/mono/utils/mono-codeman.c 2007-06-13 06:28:05 UTC (rev
79383)
+++ trunk/mono/mono/utils/mono-codeman.c 2007-06-13 08:03:09 UTC (rev
79384)
@@ -10,6 +10,7 @@
#include "mono-codeman.h"
#include "mono-mmap.h"
+#include <mono/metadata/class-internals.h>
#define MIN_PAGES 16
@@ -247,6 +248,11 @@
size += MIN_ALIGN;
size &= ~ (MIN_ALIGN - 1);
+ if (cman->dynamic) {
+ ++mono_stats.dynamic_code_alloc_count;
+ mono_stats.dynamic_code_bytes_count += size;
+ }
+
if (!cman->current) {
cman->current = new_codechunk (cman->dynamic, size);
if (!cman->current)
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches