Signed-off-by: Eric Pouech eric.pouech@gmail.com
--- include/wine/mscvpdb.h | 10 ++++++++++ tools/winedump/msc.c | 6 ++++++ 2 files changed, 16 insertions(+)
diff --git a/include/wine/mscvpdb.h b/include/wine/mscvpdb.h index b0021ed3c25..5a09b9653a3 100644 --- a/include/wine/mscvpdb.h +++ b/include/wine/mscvpdb.h @@ -2024,6 +2024,16 @@ union codeview_symbol unsigned short int csz; /* number of bytes in following array */ char rgsz[1]; /* array of null terminated strings (bounded by csz) */ } annotation_v3; + + struct + { + unsigned short int len; + unsigned short int id; + unsigned int invocations; + __int64 dynCount; + unsigned numInstrs; + unsigned staInstLive; + } pogoinfo_v3; };
enum BinaryAnnotationOpcode diff --git a/tools/winedump/msc.c b/tools/winedump/msc.c index 0fbcc3dba80..f0856b2a6a2 100644 --- a/tools/winedump/msc.c +++ b/tools/winedump/msc.c @@ -1949,6 +1949,12 @@ BOOL codeview_dump_symbols(const void* root, unsigned long start, unsigned long } break;
+ case S_POGODATA: + printf("PogoData V3 inv:%d dynCnt:%lld inst:%d staInst:%d\n", + sym->pogoinfo_v3.invocations, (long long)sym->pogoinfo_v3.dynCount, + sym->pogoinfo_v3.numInstrs, sym->pogoinfo_v3.staInstLive); + break; + default: printf("\n\t\t>>> Unsupported symbol-id %x sz=%d\n", sym->generic.id, sym->generic.len + 2); dump_data((const void*)sym, sym->generic.len + 2, " ");