[lld] r187177 - [PECOFF] Create an atom for a symbol whose storage type is IMAGE_SYM_CLASS_LABEL.

Rui Ueyama ruiu at google.com
Thu Jul 25 18:18:27 PDT 2013


Author: ruiu
Date: Thu Jul 25 20:18:27 2013
New Revision: 187177

URL: http://llvm.org/viewvc/llvm-project?rev=187177&view=rev
Log:
[PECOFF] Create an atom for a symbol whose storage type is IMAGE_SYM_CLASS_LABEL.

Modified:
    lld/trunk/lib/ReaderWriter/PECOFF/Atoms.h
    lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp

Modified: lld/trunk/lib/ReaderWriter/PECOFF/Atoms.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/Atoms.h?rev=187177&r1=187176&r2=187177&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/Atoms.h (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/Atoms.h Thu Jul 25 20:18:27 2013
@@ -179,6 +179,7 @@ public:
     case llvm::COFF::IMAGE_SYM_CLASS_EXTERNAL:
       return scopeGlobal;
     case llvm::COFF::IMAGE_SYM_CLASS_STATIC:
+    case llvm::COFF::IMAGE_SYM_CLASS_LABEL:
       return scopeTranslationUnit;
     }
     llvm_unreachable("Unknown scope!");

Modified: lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp?rev=187177&r1=187176&r2=187177&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp Thu Jul 25 20:18:27 2013
@@ -154,8 +154,10 @@ private:
       uint8_t SC = Symb->StorageClass;
       if (SC != llvm::COFF::IMAGE_SYM_CLASS_EXTERNAL &&
           SC != llvm::COFF::IMAGE_SYM_CLASS_STATIC &&
-          SC != llvm::COFF::IMAGE_SYM_CLASS_FUNCTION) {
-        llvm::errs() << "Unable to create atom for: " << Name << "\n";
+          SC != llvm::COFF::IMAGE_SYM_CLASS_FUNCTION &&
+          SC != llvm::COFF::IMAGE_SYM_CLASS_LABEL) {
+        llvm::errs() << "Unable to create atom for: " << Name
+                     << " (" << (int)SC << ")\n";
         return llvm::object::object_error::parse_failed;
       }
       const coff_section *Sec;





More information about the llvm-commits mailing list