<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 5, 2016 at 10:17 PM, Eric Christopher via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">echristo added inline comments.<br>
<br>
================<br>
Comment at: lib/CodeGen/AsmPrinter/DwarfDebug.cpp:477-479<br>
@@ -476,2 +476,5 @@<br>
+  unsigned DebugCUs = 0;<br>
   for (MDNode *N : CU_Nodes->operands()) {<br>
     auto *CUNode = cast<DICompileUnit>(N);<br>
+    if (CUNode->getEmissionKind() == DICompileUnit::NoDebug)<br>
+      continue;<br>
----------------<br>
Instead of this pattern would it make more sense to have an iterator over the nodes that checks for !NoDebug?<br></blockquote><div><br></div><div>Yeah, that sounds like something that might be nice.<br><br>Adrian - I recall one of your initial ideas was to just have a different named metadata node for these subprograms. What was the motivation for not going with that plan? (which would've meant these sort of loops would've remained OK, and only the loops in the verifier and such would need to examine both nodes?) Perhaps this relates to your comment about LTOing debug+nodebug CUs? I didn't quite follow what was wrong with that in the first place & how this addresses it, could you explain it?<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
================<br>
Comment at: lib/CodeGen/AsmPrinter/DwarfDebug.cpp:1127-1128<br>
@@ -1115,3 +1126,4 @@<br>
   if (!MMI->hasDebugInfo() || LScopes.empty() ||<br>
-      !MF->getFunction()->getSubprogram()) {<br>
+      !MF->getFunction()->getSubprogram() ||<br>
+      !SPMap.lookup(MF->getFunction()->getSubprogram())) {<br>
     // If we don't have a lexical scope for this function then there will<br>
----------------<br>
Comment.<br>
<span class="im HOEnZb"><br>
<br>
Repository:<br>
  rL LLVM<br>
<br>
<a href="http://reviews.llvm.org/D18808" rel="noreferrer" target="_blank">http://reviews.llvm.org/D18808</a><br>
<br>
<br>
<br>
</span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</div></div></blockquote></div><br></div></div>