FYI if you're still looking, Microsoft published the source code for the MIEngine that is essentially a Visual Studio Debugger Extension that implements the Core Debug Interfaces (https://msdn.microsoft.com/en-us/library/bb146305.aspx)
It can talk to LLDB and GDB. https://github.com/Microsoft/MIEngine On Tue, Apr 7, 2015 at 11:02 AM, Greg Clayton <gclay...@apple.com> wrote: > There seems to be an DWARF to PDB converter here: > > https://github.com/rainers/cv2pdb > > Not sure how good it is or what the license looks like... > >> On Apr 7, 2015, at 10:19 AM, Colin Riley <co...@codeplay.com> wrote: >> >> I think that's what I used. Hence why I want lldb C# bindings! But yeah. >> Horridly underdocumented. >> From: Zachary Turner >> Sent: 07/04/2015 18:10 >> To: Colin Riley; lldb-dev@cs.uiuc.edu >> Subject: Re: [lldb-dev] [LLVMdev] PDB support in LLVM >> >> Btw the python tools project doesn't use Dbgeng extensibility model, it's a >> newer richer extensibility framework that is even less documented (most >> people probably wouldn't even know it exists) but much more powerful. And >> it's all in managed code, so you get the c# stuff for free. >> >> But still, 4-5 weeks seems very aggressive >> On Tue, Apr 7, 2015 at 9:48 AM Colin Riley <co...@codeplay.com> wrote: >> You could try extending the codeview and then relying on the ms linker to >> emit a pdb from it (last time I checked it converts on the fly - this may >> have changed recently, and what it converts may not be fully featured). >> >> The Debug Engine extensibility for visual studio is, as Zach says, not well >> documented at all. Despite that, in the past I have had LLDB chatting in a >> limited way to visual studio. It was incredibly messy, and the way I chose >> to do it was go from Visual Studio -> c# -> c++/CLI -> C++ lldb api. Don't >> do it that way if you attempt it: Create lldb C# bindings instead and go >> that direction. I've been looking at that lately but it's a side project so >> cant be relied on if you need it quickly. >> >> As for the time frame, 4-5 weeks isn't going to get far given the lack of >> documentation. The debug engine samples don't go far enough in terms of >> requiring a native C++ environment. >> >> Colin >> >> >> On 07/04/2015 17:25, Zachary Turner wrote: >>> It sounds like if you have a time frame of 4-5 weeks, you've got a tall >>> order cut out for yourself. I don't want to say impossible, but... that's >>> pretty rough. >>> >>> I think you've got two options: >>> 1) Try to figure out how to emit PDB. The format is undocumented, so >>> you're kind of on your own here. >>> 2) Try to figure out how to get Visual Studio to understand DWARF. Visual >>> Studio has a reasonably rich extensibility model which is also not very >>> well documented, so you're probably on your own here as well. You may want >>> to have a look at PythonTools for Visual Studio. It's entirely open source >>> and adds Python debugging to Visual Studio. Obviously you don't need to be >>> able to debug Python, but it's the best source of documentation I know of >>> for extending Visual Studio in this kind of way so maybe it will help. If >>> you end up doing this, it would be great if you could try to upstream it >>> back to LLDB. Visual Studio integration with LLDB would be nice to have. >>> >>> On Mon, Apr 6, 2015 at 5:02 PM Rohan Bajaj <rohanbaja...@gmail.com> wrote: >>> Moving to lldb-dev per suggestion. >>> >>> Using Visual Studio is only criteria for us. It could be DWARF or PDB. >>> >>> But I need to implement this soon (4-5 weeks from now). What do you >>> recommend? >>> >>> Zachary do you also suggest using LLDB on Windows? >>> >>> >>> On Mon, Apr 6, 2015 at 4:35 PM, Zachary Turner <ztur...@google.com> wrote: >>> >>> >>> On Mon, Apr 6, 2015 at 4:16 PM Chandler Carruth <chandl...@google.com> >>> wrote: >>> On Mon, Apr 6, 2015 at 3:46 PM Rohan Bajaj <rohanbaja...@gmail.com> wrote: >>> Is making PDB files for corresponding IR supported in LLVM latest version? >>> >>> Not today. >>> >>> >>> After some searching I see llvm-pdbdump, but I want to annotate the IR with >>> debug information so that when I write bitcode it has pdb information. >>> >>> I've heard of CodeView, but it seems to be only for line information. I >>> want variable values also. >>> >>> I would be ok to use DWARF if Visual Studio could understand it using LLDB >>> but I don't know how to do that or if it is support. >>> >>> Zach (CC-ed) and others are actively working on making LLDB work well on >>> Windows, including reading DWARF debug information on Windows and >>> potentially integration with Visual Studio (although I think that is >>> further away at the moment). However, further discussion might be better on >>> the LLDB mailing lists. >>> >>> It's worth pointing out that CodeView is **not** only for line information. >>> It's for everything. It's just that LLVM currently only understands a >>> subset of CodeView record types related to line information. >>> >>> >>> >>> >>> _______________________________________________ >>> lldb-dev mailing list >>> >>> lldb-dev@cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >> >> -- >> - Colin Riley >> Senior Director, >> Parallel/Graphics Debugger Systems >> >> _______________________________________________ >> lldb-dev mailing list >> lldb-dev@cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev >> _______________________________________________ >> lldb-dev mailing list >> lldb-dev@cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev > > > _______________________________________________ > lldb-dev mailing list > lldb-dev@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev _______________________________________________ lldb-dev mailing list lldb-dev@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev