[lld] r218395 - [PECOFF] Do not print @<ordinal> if the symbol is private

Rui Ueyama ruiu at google.com
Wed Sep 24 10:51:51 PDT 2014


Author: ruiu
Date: Wed Sep 24 12:51:51 2014
New Revision: 218395

URL: http://llvm.org/viewvc/llvm-project?rev=218395&view=rev
Log:
[PECOFF] Do not print @<ordinal> if the symbol is private

lib.exe prints a warning if a symbol in a module definition file has
both the PRIVATE attribute and an ordinal like this.

  EXPORTS
    foo @1 PRIVATE

This patch suppresses that.

Modified:
    lld/trunk/lib/ReaderWriter/PECOFF/WriterImportLibrary.cpp

Modified: lld/trunk/lib/ReaderWriter/PECOFF/WriterImportLibrary.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/WriterImportLibrary.cpp?rev=218395&r1=218394&r2=218395&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/WriterImportLibrary.cpp (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/WriterImportLibrary.cpp Wed Sep 24 12:51:51 2014
@@ -30,7 +30,9 @@ createModuleDefinitionFile(const PECOFFL
      << "EXPORTS\n";
 
   for (const PECOFFLinkingContext::ExportDesc &desc : ctx.getDllExports()) {
-    os << "  " << desc.externalName << " @" << desc.ordinal;
+    os << "  " << desc.externalName;
+    if (!desc.isPrivate)
+      os << " @" << desc.ordinal;
     if (desc.noname)
       os << " NONAME";
     if (desc.isData)





More information about the llvm-commits mailing list