[lldb-dev] PDB symbol reader status?

Vadim Chugunov via lldb-dev lldb-dev at lists.llvm.org
Fri Jul 28 14:41:37 PDT 2017


Thanks, I know that dwarf works with lldb on Windows, but I was
specifically trying to debug a program compiled with pdb debug info.
(Why not a native Windows debugger?  Because I have existing code that uses
lldb api.)

On Fri, Jul 28, 2017 at 4:10 AM, Zachary Turner <zturner at google.com> wrote:

> 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/78db450b/attachment.html>


More information about the lldb-dev mailing list