[llvm-dev] Gauging interest in generating PDBs from LLVM-backed languages

Zachary Turner via llvm-dev llvm-dev at lists.llvm.org
Tue Jul 26 12:30:48 PDT 2016

I wrote most of the pdb code in llvm so far. As Reid suggested, if you look
in DebugInfo/PDB/Raw there is a significant amount of code dealing with msf
files and raw pdb streams. If you build the llvm-pdbdump tool you can run
it with the "raw" subcommand to dump lots of low level info from the file.

It's pretty complete for reading pdb files, and I'm actively working on
expanding write support.

Feel free to ask questions or even submit a patch if you see something you
think could be better
On Tue, Jul 26, 2016 at 11:52 AM Michael Lewis <don.apoch at gmail.com> wrote:

> On Tue, Jul 26, 2016 at 8:02 AM, Reid Kleckner <rnk at google.com> wrote:
>> We've been pursuing the direction of writing PDBs from scratch in
>> llvm/lib/DebugInfo/PDB/Raw and related directories. It might be interesting
>> to have code that talks to MSPDB140.dll in LLVM, but we really want LLD to
>> be able to produce its output on any platform.
> I completely agree about independence from arbitrary platform-specific
> binaries. (After all, escaping LINK.EXE just to rely on MSPDB140.dll isn't
> that huge of a win by itself.)
> I forgot to mention it in my original mail, but my plan is to transition
> away from using MSPDB140.dll and fabricate "whole cloth" PDB/MSF files in
> the near future. Based on the microsoft-pdb GitHub repo and the code I've
> seen in LLVM, I think this is a totally reachable goal.
> Most of what I've found has little to do with the mechanics of the MSF
> format (yet!) and more to do with the semantic content of PDBs and how to
> coax the debuggers in question to yield the desired results. I don't know
> how much of that stuff is mysterious to the larger community and what was
> just mysterious to me when I set out on this little venture :-)
> But in any case I'd be glad to compare notes with anyone who's working in
> this space.
>  - Mike
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160726/be07b690/attachment.html>

More information about the llvm-dev mailing list