So, I just sync'd to LLVM tip and added the call to DIBuilder::finalize(). But even with that change I am getting an error when I try to run llc:<div>







<p class="p1">Assertion failed: (TheCU && "Unable to find compile unit!"), function endFunction, file /Users/talin/Projects/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp, line 1306.</p>
<p class="p1">And looking at the .bc dissassembly, I see there are indeed compile unit MDNodes, although at this level I can't tell if they are hooked up correctly.</p><p class="p1">On Wed, Aug 31, 2011 at 9:07 AM, Devang Patel <span dir="ltr"><<a href="mailto:dpatel@apple.com">dpatel@apple.com</a>></span> wrote:</p>

<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div style="word-wrap:break-word"><br><div><div class="im"><div>On Aug 22, 2011, at 6:48 AM, Irina Lipov wrote:</div>

<br></div><blockquote type="cite"><div>Hi,</div><div><div class="im">I saw your update regarding "<em>The <code>DIBuilder</code> interface used by front ends to encode debugging     information in the LLVM IR now expects clients to use <code>DIBuilder::finalize()</code>    at the end of translation unit to complete debugging information encoding"</em><br clear="all">

</div>
Does it mean that in the new version you defer emission of some debug info until  the translation  is finished and this is a reason to use DIBuilder::finalize?</div></blockquote><br></div><div>Before this change, each type, subprogram and global variable information used to refer compile unit directly. Now, the compile unit keeps track of all these info directly. The compile unit MDNode is updated in the ::finalize() with list of types, subprograms etc..<div>

-</div><div>Devang</div></div><br></div>
<br>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br>-- <br>-- Talin<br>
</div>