[llvm-bugs] [Bug 23472] missing comdats for static initializers in template and guard variables

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Aug 28 10:42:10 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=23472

Yaron Keren <yaron.keren at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #14 from Yaron Keren <yaron.keren at gmail.com> ---
You are right, I tested on a local patched copy that disables on COFF as
dicussed earlier:

     // The ABI says: It is suggested that it be emitted in the same COMDAT
group
     // as the associated data object
     llvm::Comdat *C = var->getComdat();
-    if (!D.isLocalVarDecl() && C) {
+    if (!CGM.getTarget().getTriple().isOSBinFormatCOFF() &&
+        !D.isLocalVarDecl() && C) {
       guard->setComdat(C);
       CGF.CurFn->setComdat(C);
     } else if (CGM.supportsCOMDAT() && guard->isWeakForLinker()) {

Thanks for noticing!

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150828/fdab1e85/attachment-0001.html>


More information about the llvm-bugs mailing list