Eric Pouech : winedump: Define and dump POGO codeview record.
Module: wine Branch: master Commit: 25d2c954adea4f46dcb9bc0e02ca63bb8de111c4 URL: https://source.winehq.org/git/wine.git/?a=commit;h=25d2c954adea4f46dcb9bc0e0... Author: Eric Pouech <eric.pouech(a)gmail.com> Date: Mon Nov 15 18:25:28 2021 +0100 winedump: Define and dump POGO codeview record. Signed-off-by: Eric Pouech <eric.pouech(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- 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, " ");
participants (1)
-
Alexandre Julliard