<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Aug 4, 2014 at 2:22 PM, Alexander Kornienko <span dir="ltr"><<a href="mailto:alexfh@google.com" target="_blank">alexfh@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">This patch makes the <span style="color:rgb(0,0,0)">deadcode.DeadStores analyzer hang on this file: </span><a href="https://code.google.com/p/dynamorio/source/browse/trunk/core/options.c" target="_blank">https://code.google.com/p/dynamorio/source/browse/trunk/core/options.c</a><div>

<br></div><div>The relevant part of stack trace looks like this:</div><div><pre style="color:rgb(0,0,0)">  0x00e189ed: llvm::ImutAVLFactory<llvm::ImutContainerInfo<clang::Stmt const*> >::balanceTree(llvm::ImutAVLTree<llvm::ImutContainerInfo<clang::Stmt const*> >*, clang::Stmt const*, llvm::ImutAVLTree<llvm::ImutContainerInfo<clang::Stmt const*> >*)
  0x00e18d2e: llvm::ImutAVLFactory<llvm::ImutContainerInfo<clang::Stmt const*> >::add_internal(clang::Stmt const*, llvm::ImutAVLTree<llvm::ImutContainerInfo<clang::Stmt const*> >*)
  0x00e18ec5: llvm::ImutAVLFactory<llvm::ImutContainerInfo<clang::Stmt const*> >::add_internal(clang::Stmt const*, llvm::ImutAVLTree<llvm::ImutContainerInfo<clang::Stmt const*> >*)
  0x00e1b292: llvm::ImutAVLFactory<llvm::ImutContainerInfo<clang::Stmt const*> >::add(llvm::ImutAVLTree<llvm::ImutContainerInfo<clang::Stmt const*> >*, clang::Stmt const*)
  0x00e1f2d1: clang::LiveVariables::computeLiveness(clang::AnalysisDeclContext&, bool)
  0x00673969: void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::DeadStoresChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&)</pre><div><div class="gmail_extra">

Did you notice that the DataflowWorklist class was a bit different in these two classes? </div></div></div></div></blockquote><div><br></div><div>I meant, "files" (<span style="font-size:13px;font-family:arial,sans-serif">UninitializedValues.</span><span class="" style="font-size:13px;font-family:arial,sans-serif">cpp and </span><span style="font-size:13px;font-family:arial,sans-serif">LiveVariables.</span><span class="" style="font-size:13px;font-family:arial,sans-serif">cpp)</span>, not "classes". </div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div class="gmail_extra">
Notably, the dequeue method and initialization of the <span style="font-family:arial,sans-serif;font-size:13px">enqueuedBlocks bit-vector.</span></div>
<div class="gmail_extra"><font face="arial, sans-serif"><br></font></div><div class="gmail_extra"><font face="arial, sans-serif">Please fix or revert the patch.</font></div><div class="gmail_extra"><font face="arial, sans-serif"><br>

</font></div><div class="gmail_extra"><font face="arial, sans-serif">Thank you!<br></font><div><div class="h5"><br><div class="gmail_quote">On Tue, Jul 29, 2014 at 6:27 PM, Artyom Skrobov <span dir="ltr"><<a href="mailto:Artyom.Skrobov@arm.com" target="_blank">Artyom.Skrobov@arm.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hal, thank you for the suggestion! I've expanded that comment four-fold in r214183.<br>


<br>
Ted, thank you for reviewing the original patch, and no worries it took a while.<br>
You might want to also check that the comments I've added when committing r214064 are correct -- although they're essentially a rephrasing of comments from your own emails.<br>
<div><br>
<br>
-----Original Message-----<br>
From: Hal Finkel [mailto:<a href="mailto:hfinkel@anl.gov" target="_blank">hfinkel@anl.gov</a>]<br>
Sent: 28 July 2014 13:12<br>
To: Artyom Skrobov<br>
Cc: <a href="mailto:cfe-commits@cs.uiuc.edu" target="_blank">cfe-commits@cs.uiuc.edu</a><br>
Subject: Re: r214064 - Factoring DataflowWorklist out of LiveVariables and UninitializedValues analyses<br>
<br>
<br>
We should have a description here of what this code does, not just where it's used. One can get some idea by reading the comments above DataflowWorklist::enqueueSuccessors in the source file, but it is not clear that gives a complete picture.<br>


<br>
 -Hal<br>
<br>
<br>
<br>
<br>
<br>
</div><div><div>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu" target="_blank">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</div></div></blockquote></div><br></div></div></div></div></div></div></blockquote></div><br>
</div></div>