[lldb-dev] PDB symbol reader status?

Zachary Turner via lldb-dev lldb-dev at lists.llvm.org
Fri Jul 28 04:10:09 PDT 2017


It can handle linking dwarf debug info. Also I misspoke, you can't get
dwarf debug info with clang-cl, but you can with clang++ on windows. Look
at how the test suite on windows compiles the inferiors. That's currently
the best debugging experience of Windows programs.

Unfortunately i was never able to get the rest of windows support
implemented as i got pulled off to add support for writing codeview/pdb to
clang-cl
On Wed, Jul 26, 2017 at 5:38 PM Vadim Chugunov <vadimcn at gmail.com> wrote:

> Why -fuse-ld=lld?   What does lld do differently than MS linker?
>
>
> On Wed, Jul 26, 2017 at 1:10 PM, Zachary Turner <zturner at google.com>
> wrote:
>
>> For clang-cl you need to use -fuse-ld=lld. For msvc only a small amount
>> of pdb support was added to lldb, namely the ability to resolve file and
>> line info.
>> On Wed, Jul 26, 2017 at 12:46 PM Vadim Chugunov <vadimcn at gmail.com>
>> wrote:
>>
>>> I'm trying to use LLDB built from svn trunk: for MSVC emitted binaries
>>> it cannot set any breakpoints, and for clang-cl outputs it crashes when
>>> setting a breakpoiint by file/line.   Are these scenarios supposed to work?
>>> WinDbg works fine in both cases, so the debug info is probably ok.
>>>
>>> (I'm using VS 2017 Build Tools, if that matters).
>>>
>>> On Wed, Jul 26, 2017 at 11:54 AM, Adrian McCarthy <amccarth at google.com>
>>> wrote:
>>>
>>>> Basic PDB support is in LLDB if you're running on Windows.  LLDB has a
>>>> SymbolFilePDB plugin that relies on a PDB abstraction in LLVM.  There is
>>>> currently just one implementation of that abstraction, and it relies on
>>>> DIA, which is a Microsoft-provided DLL on Windows for looking up
>>>> information in a PDB.
>>>>
>>>> I'm currently working on a native PDB reader that implements the same
>>>> interface without reliance on DIA, so that should eventually provide the
>>>> same functionality even if you're not running on Windows.
>>>>
>>>> Browsing through the PDB plugin in LLDB, I see a lot of "//TODO:
>>>>  Implement this" methods, so you won't (yet) have rich type information.
>>>> But you can set breakpoints by name, get a stack backtrace, print variable
>>>> values, etc.
>>>>
>>>>
>>>> On Wed, Jul 26, 2017 at 11:19 AM, Vadim Chugunov via lldb-dev <
>>>> lldb-dev at lists.llvm.org> wrote:
>>>>
>>>>> Hi,
>>>>> What is the current status of LLDB's PDB file parser on Windows?   It
>>>>> was announced back in 2015 that PDB support is coming soon, so I was
>>>>> wondering where it's at currently.
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> lldb-dev mailing list
>>>>> lldb-dev at lists.llvm.org
>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>>>
>>>>>
>>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20170728/6793263a/attachment-0001.html>


More information about the lldb-dev mailing list