<div dir="ltr">Hello Justin,<br><div><br>This change made clang indeterministic.<br><a href="http://lab.llvm.org:8011/builders/clang-with-lto-ubuntu/builds/453">http://lab.llvm.org:8011/builders/clang-with-lto-ubuntu/builds/453</a><br><br></div><div>Could you revert it, please?<br><br></div><div>If you would like to debug, here are some details:<br></div><div><br></div><div>With this patch, 2 sequential builds of the exact same compiler produces different results. The .rodata sections are different in size.<br></div><div></div><div>Please find attached 2 dumped section headers for clang-4.0 executable. Note that the size of the section [ 5] .rodata is different for each build.<br><br></div><div>Thanks<br></div><div><br></div><div>Galina<br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Aug 26, 2016 at 3:29 PM, Justin Bogner 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">Author: bogner<br>
Date: Fri Aug 26 17:29:36 2016<br>
New Revision: 279875<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=279875&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project?rev=279875&view=rev</a><br>
Log:<br>
TableGen: Switch from a std::map to a DenseMap in CodeGenSubRegIndex. NFC<br>
<br>
This mapping is between pointers, which DenseMap is particularly good<br>
at. Most targets aren't really affected, but if there's a lot of<br>
subregister composition this can shave off a good chunk of time from<br>
generating registers.<br>
<br>
Modified:<br>
    llvm/trunk/utils/TableGen/<wbr>CodeGenRegisters.h<br>
<br>
Modified: llvm/trunk/utils/TableGen/<wbr>CodeGenRegisters.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenRegisters.h?rev=279875&r1=279874&r2=279875&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project/llvm/trunk/utils/<wbr>TableGen/CodeGenRegisters.h?<wbr>rev=279875&r1=279874&r2=<wbr>279875&view=diff</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- llvm/trunk/utils/TableGen/<wbr>CodeGenRegisters.h (original)<br>
+++ llvm/trunk/utils/TableGen/<wbr>CodeGenRegisters.h Fri Aug 26 17:29:36 2016<br>
@@ -74,8 +74,7 @@ namespace llvm {<br>
     std::string getQualifiedName() const;<br>
<br>
     // Map of composite subreg indices.<br>
-    typedef std::map<CodeGenSubRegIndex *, CodeGenSubRegIndex *,<br>
-                     deref<llvm::less>> CompMap;<br>
+    typedef DenseMap<CodeGenSubRegIndex *, CodeGenSubRegIndex *> CompMap;<br>
<br>
     // Returns the subreg index that results from composing this with Idx.<br>
     // Returns NULL if this and Idx don't compose.<br>
<br>
<br>
______________________________<wbr>_________________<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/<wbr>mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div>