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
<https://github.com/Microsoft/PTVS>. 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
<mailto: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
<mailto:ztur...@google.com>> wrote:
On Mon, Apr 6, 2015 at 4:16 PM Chandler Carruth
<chandl...@google.com <mailto:chandl...@google.com>> wrote:
On Mon, Apr 6, 2015 at 3:46 PM Rohan Bajaj
<rohanbaja...@gmail.com <mailto: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