[Lldb-commits] [lldb] [LLDB][NativePDB] Mark blocks as parsed after parsing (PR #157493)

via lldb-commits lldb-commits at lists.llvm.org
Mon Sep 8 08:51:55 PDT 2025


Nerixyz wrote:

> Why can't the native plugin use `PDB_DataKind::ObjectPtr`?

It's something DIA determines - in [`IDiaSymbol::get_dataKind`](https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/idiasymbol-get-datakind?view=vs-2022).

The symbol information we have is the following:
```
    1132 | S_GPROC32 [size = 52] `Class::Func`
           parent = 0, end = 1248, addr = 0001:0208, code size = 7
           type = `0x1010 (void Class::())`, debug start = 0, debug end = 0, flags = noinline | opt debuginfo
    1184 | S_FRAMEPROC [size = 32]
           size = 8, padding size = 0, offset to padding = 0
           bytes of callee saved registers = 0, exception handler addr = 0000:0000
           local fp reg = RSP, param fp reg = RSP
           flags = safe buffers
    1216 | S_LOCAL [size = 16] `this`
           type=0x1013 (Class*), flags = param
    1232 | S_DEFRANGE_FRAMEPOINTER_REL [size = 16]
           offset = 0, range = [0001:0213,+2)
           gaps = []
    1248 | S_END [size = 4]
```
This is `Class::Func()` which takes no parameters (except `this`).

https://github.com/llvm/llvm-project/pull/157493


More information about the lldb-commits mailing list