Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorZoltan Varga <vargaz@gmail.com>2012-10-14 23:49:00 +0400
committerZoltan Varga <vargaz@gmail.com>2012-10-15 22:33:15 +0400
commitf374d5162cf2351baa954fda39ae231cc8b8f113 (patch)
tree5f34a9fb8be742c6cd13e86f5a88eacab782c321 /tools
parentc7e274047ba208f8a90a112bdcb4be3807bae8ff (diff)
Add more info for collections/thread suspends to the sgen binary protocol.
Diffstat (limited to 'tools')
-rw-r--r--tools/sgen/sgen-grep-binprot.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/tools/sgen/sgen-grep-binprot.c b/tools/sgen/sgen-grep-binprot.c
index 4e41e8a3573..2195f4ff3fb 100644
--- a/tools/sgen/sgen-grep-binprot.c
+++ b/tools/sgen/sgen-grep-binprot.c
@@ -31,6 +31,7 @@ read_entry (FILE *in, void **data)
case SGEN_PROTOCOL_PTR_UPDATE: size = sizeof (SGenProtocolPtrUpdate); break;
case SGEN_PROTOCOL_CLEANUP: size = sizeof (SGenProtocolCleanup); break;
case SGEN_PROTOCOL_EMPTY: size = sizeof (SGenProtocolEmpty); break;
+ case SGEN_PROTOCOL_THREAD_SUSPEND: size = sizeof (SGenProtocolThreadSuspend); break;
case SGEN_PROTOCOL_THREAD_RESTART: size = sizeof (SGenProtocolThreadRestart); break;
case SGEN_PROTOCOL_THREAD_REGISTER: size = sizeof (SGenProtocolThreadRegister); break;
case SGEN_PROTOCOL_THREAD_UNREGISTER: size = sizeof (SGenProtocolThreadUnregister); break;
@@ -51,7 +52,7 @@ print_entry (int type, void *data)
switch (type) {
case SGEN_PROTOCOL_COLLECTION: {
SGenProtocolCollection *entry = data;
- printf ("collection generation %d\n", entry->generation);
+ printf ("collection %d generation %d\n", entry->index, entry->generation);
break;
}
case SGEN_PROTOCOL_ALLOC: {
@@ -110,6 +111,11 @@ print_entry (int type, void *data)
printf ("empty start %p size %d\n", entry->start, entry->size);
break;
}
+ case SGEN_PROTOCOL_THREAD_SUSPEND: {
+ SGenProtocolThreadSuspend *entry = data;
+ printf ("thread_suspend thread %p ip %p\n", entry->thread, entry->stopped_ip);
+ break;
+ }
case SGEN_PROTOCOL_THREAD_RESTART: {
SGenProtocolThreadRestart *entry = data;
printf ("thread_restart thread %p\n", entry->thread);
@@ -147,6 +153,7 @@ is_match (gpointer ptr, int type, void *data)
{
switch (type) {
case SGEN_PROTOCOL_COLLECTION:
+ case SGEN_PROTOCOL_THREAD_SUSPEND:
case SGEN_PROTOCOL_THREAD_RESTART:
case SGEN_PROTOCOL_THREAD_REGISTER:
case SGEN_PROTOCOL_THREAD_UNREGISTER: