[PATCH] dbghelp: Support S_HEAPALLOCSITE entry

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Mon Jun 3 18:55:46 CDT 2019


Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
 dlls/dbghelp/msc.c     |  5 +++++
 include/wine/mscvpdb.h | 10 ++++++++++
 2 files changed, 15 insertions(+)

diff --git a/dlls/dbghelp/msc.c b/dlls/dbghelp/msc.c
index 54fbe36596..4be0cb244d 100644
--- a/dlls/dbghelp/msc.c
+++ b/dlls/dbghelp/msc.c
@@ -2011,6 +2011,11 @@ static BOOL codeview_snarf(const struct msc_debug_info* msc_dbg, const BYTE* roo
         case S_ALIGN_V1:
             TRACE("S-Align V1\n");
             break;
+        case S_HEAPALLOCSITE:
+            TRACE("heap site: offset=0x%08x at sect_idx 0x%04x, inst_len 0x%08x, index 0x%08x\n",
+                    sym->heap_alloc_site.offset, sym->heap_alloc_site.sect_idx,
+                    sym->heap_alloc_site.inst_len, sym->heap_alloc_site.index);
+            break;
 
         /* the symbols we can safely ignore for now */
         case S_TRAMPOLINE:
diff --git a/include/wine/mscvpdb.h b/include/wine/mscvpdb.h
index a44331bb5c..2301e80d86 100644
--- a/include/wine/mscvpdb.h
+++ b/include/wine/mscvpdb.h
@@ -1644,6 +1644,16 @@ union codeview_symbol
         unsigned short          eh_sect;        /* section for exception handler */
         unsigned int            flags;
     } frame_info_v2;
+
+    struct
+    {
+        unsigned short  len;
+        unsigned short  id;
+        unsigned int    offset;
+        unsigned short  sect_idx;
+        unsigned short  inst_len;
+        unsigned int    index;
+    } heap_alloc_site;
 };
 
 #define S_COMPILAND_V1  0x0001
-- 
2.17.1



More information about the wine-devel mailing list