<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-2"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">On Apr 24, 2013, at 1:04 PM, "Malea, Daniel" <<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a>> wrote:<br><div><blockquote type="cite"><div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">On 2013-04-17 11:31 AM, "Malea, Daniel" <<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a>> wrote:<br><br><blockquote type="cite">Has anyone tried this pass or had a chance to look at the patches?<br><br><a href="http://llvm-reviews.chandlerc.com/D659">http://llvm-reviews.chandlerc.com/D659</a><br></blockquote></div></blockquote><div><br></div><div>Duping my comment to the commits list since it isn't CC'd from phabricator, and I'd like general feedback on the next step: integrating it with a normal clang build...</div><div><br></div><p style="margin: 0px 0px 1em; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;">I think this is a great idea, and the implementation looks very nice.</p><p style="margin: 0px 0px 1em; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;">Can you forward declare SlotTracker and have createSlotTracker accept a Module, instead of moving the class to the header? I think it's an implementation detail.</p><p style="margin: 0px 0px 1em; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;">I really would like to take the next step to make this useful. We need a clang/llvm option that can be used without "-g" to generate the -debug.ll files in the output directory.</p><div style="margin: 0px; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;">Meanwhile, I think you should commit what you have.</div><div style="margin: 0px; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;"><br></div><div style="margin: 0px; padding: 0px; border: 0px; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 13px; line-height: 18.84375px; background-color: rgb(255, 255, 255); position: static; z-index: auto;">-Andy</div><br><blockquote type="cite"><div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><blockquote type="cite">On 2013-04-15 12:19 PM, "Malea, Daniel" <<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a>> wrote:<br><br><blockquote type="cite">Ah, sorry, I figured phabricator link was sufficient. Here are the 4<br>patches that represent the latest phabricator review:<br><br><br><br>Part #1: FormattedStream -- Add line tracking<br>- previously formatted_raw_ostream tracked columns, now it tracks lines<br>too<br>- used by DebugIR pass to know the line number to connect to each IR<br>instruction<br><br>Part #2: Pull up AssemblyWriter interface into header to allow<br>subclassing<br>- made all functions virtual so that subclasses can specialize them<br>- add printInstructionLine so that subclasses can choose whether or not<br>to<br>print the newline character (without having to implement<br>printBasicBlock()<br>- no intended change in functionality/behaviour!<br><br>Part #3: DebugIR -- emit IR file and replace source lines with IR lines<br>in MD<br>- requires existing debug information to be present<br>- fixes up file name and line number information<br>- emits a "<orig_filename>-debug.ll" succinct IR file (without !dbg<br>metadata<br>or debug intrinsics) that can be read by a debugger<br><br>Part #4: DebugIR tests -- lit tests for the line number transform<br>- simple one-function case<br>- function-calling case<br>- external function calling case<br>- exception throwing case<br>- vector case<br>- O3 (vector) case<br><br><br><br><br>From: Chandler Carruth<br><<a href="mailto:chandlerc@google.com">chandlerc@google.com</a><<a href="mailto:chandlerc@google.com">mailto:chandlerc@google.com</a>>><br>Date: Monday, 15 April, 2013 4:29 AM<br>To: Stefanus Du Toit<br><<a href="mailto:stefanus.du.toit@intel.com">stefanus.du.toit@intel.com</a><<a href="mailto:stefanus.du.toit@intel.com">mailto:stefanus.du.toit@intel.com</a>>><br>Cc: Nadav Rotem <<a href="mailto:nrotem@apple.com">nrotem@apple.com</a><<a href="mailto:nrotem@apple.com">mailto:nrotem@apple.com</a>>>, Daniel Malea<br><<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a><<a href="mailto:daniel.malea@intel.com">mailto:daniel.malea@intel.com</a>>>,<br>"<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>>"<br><<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>>><br>Subject: Re: [PATCH] Debugging LLVM IR with LLDB (and gdb)<br><br>On Mon, Apr 15, 2013 at 1:21 AM, Du Toit, Stefanus<br><<a href="mailto:stefanus.du.toit@intel.com">stefanus.du.toit@intel.com</a><<a href="mailto:stefanus.du.toit@intel.com">mailto:stefanus.du.toit@intel.com</a>>> wrote:<br>The link to the patch is at the bottom of the email.<br><br>As usual, please attach the patch to the email. The best way when using<br>Phabricator (as we documented) is to add the commits list to the review<br>there so that everyone on the mailing list can follow the code review and<br>participate even if not using the specific tool.<br><br><br>--<br>Stefanus Du Toit<span class="Apple-converted-space"> </span><br><<a href="mailto:stefanus.du.toit@intel.com">stefanus.du.toit@intel.com</a><<a href="mailto:stefanus.du.toit@intel.com">mailto:stefanus.du.toit@intel.com</a>>><br>Intel Waterloo<br>Phone: 519-591-1738<tel:519-591-1738><br><br><br>From: Nadav Rotem<br><<a href="mailto:nrotem@apple.com">nrotem@apple.com</a><<a href="mailto:nrotem@apple.com">mailto:nrotem@apple.com</a>><<a href="mailto:nrotem@apple.com">mailto:nrotem@apple.com</a><mailto<br>:<br><a href="mailto:nrotem@apple.com">nrotem@apple.com</a>>>><br>Date: Sunday, 14 April, 2013 4:00 AM<br>To: Daniel Malea<span class="Apple-converted-space"> </span><br><<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a><<a href="mailto:daniel.malea@intel.com">mailto:daniel.malea@intel.com</a>><mailto:daniel.male<br>a<br>@<a href="http://intel.com">intel.com</a><<a href="mailto:daniel.malea@intel.com">mailto:daniel.malea@intel.com</a>>>><br>Cc:<span class="Apple-converted-space"> </span><br>"<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>><mailto:llvm-co<br>m<br><a href="mailto:mits@cs.uiuc.edu">mits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>>>"<br><<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>><mailto:llvm-co<br>m<br><a href="mailto:mits@cs.uiuc.edu">mits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>>>><br>Subject: Re: [PATCH] Debugging LLVM IR with LLDB (and gdb)<br><br>Hi Daniel,<br><br>You forgot to attache the patch.<br><br>Thanks,<br>Nadav<br><br>On Apr 11, 2013, at 1:53 PM, "Malea, Daniel"<br><<a href="mailto:daniel.malea@intel.com">daniel.malea@intel.com</a><<a href="mailto:daniel.malea@intel.com">mailto:daniel.malea@intel.com</a>><mailto:daniel.male<br>a<br>@<a href="http://intel.com">intel.com</a><<a href="mailto:daniel.malea@intel.com">mailto:daniel.malea@intel.com</a>>>> wrote:<br><br>[©]<br>I'd be appreciative of testing and/or review comments! The patch is<br>available on phabricator <a href="http://llvm-reviews.chandlerc.com/D659and">http://llvm-reviews.chandlerc.com/D659and</a> the<br>details from the review request follow.<br><br><br>_______________________________________________<br>llvm-commits mailing list<br><a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><<a href="mailto:llvm-commits@cs.uiuc.edu">mailto:llvm-commits@cs.uiuc.edu</a>><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br><br></blockquote><br></blockquote><br><br>_______________________________________________<br>llvm-commits mailing list<br><a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commit<br>s</div></blockquote></div><br></body></html>