<div dir="ltr">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.<br><br><div>I think you've got two options:</div><div>1) Try to figure out how to emit PDB.  The format is undocumented, so you're kind of on your own here.</div><div>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 <a href="https://github.com/Microsoft/PTVS">PythonTools for Visual Studio</a>.  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.</div></div><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 5:02 PM Rohan Bajaj <<a href="mailto:rohanbajaj84@gmail.com">rohanbajaj84@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Moving to lldb-dev per suggestion.</div><div><br></div><div>Using Visual Studio is only criteria for us. It could be DWARF or PDB.</div><div><br></div><div>But I need to implement this soon (4-5 weeks from now). What do you recommend?</div><div><br></div><div>Zachary do you also suggest using LLDB on Windows?</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 4:35 PM, Zachary Turner <span dir="ltr"><<a href="mailto:zturner@google.com" target="_blank">zturner@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><br><div class="gmail_quote"><span>On Mon, Apr 6, 2015 at 4:16 PM Chandler Carruth <<a href="mailto:chandlerc@google.com" target="_blank">chandlerc@google.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid"><div dir="ltr"><div class="gmail_quote">On Mon, Apr 6, 2015 at 3:46 PM Rohan Bajaj <<a href="mailto:rohanbajaj84@gmail.com" target="_blank">rohanbajaj84@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid"><div dir="ltr"><div>Is making PDB files for corresponding IR supported in LLVM latest version?</div></div></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>Not today.</div></div></div><div dir="ltr"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid"><div dir="ltr"><div><br></div><div>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.</div><div><br></div><div>I've heard of CodeView, but it seems to be only for line information. I want variable values also.</div><div><br></div><div>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.</div></div></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>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.</div></div></div></blockquote><div><br></div></span><div>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.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">
</blockquote></div></div>
</blockquote></div><br></div>
</blockquote></div>