summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp11
-rw-r--r--lld/test/pecoff/merge-largest.test2
2 files changed, 1 insertions, 12 deletions
diff --git a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
index e14db7249c3..889cbbe6906 100644
--- a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
+++ b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
@@ -517,17 +517,6 @@ FileCOFF::createDefinedSymbols(const SymbolVectorT &symbols,
return ec;
assert(sec && "SectionIndex > 0, Sec must be non-null!");
- // Skip if it's a section symbol for a COMDAT section. A section symbol
- // has the name of the section and value 0. A translation unit may contain
- // multiple COMDAT sections whose section name are the same. We don't want
- // to make atoms for them as they would become duplicate symbols.
- StringRef sectionName;
- if (std::error_code ec = _obj->getSectionName(sec, sectionName))
- return ec;
- if (_symbolName[sym] == sectionName && sym.getValue() == 0 &&
- _merge[sec] != DefinedAtom::mergeNo)
- continue;
-
uint8_t sc = sym.getStorageClass();
if (sc != llvm::COFF::IMAGE_SYM_CLASS_EXTERNAL &&
sc != llvm::COFF::IMAGE_SYM_CLASS_STATIC &&
diff --git a/lld/test/pecoff/merge-largest.test b/lld/test/pecoff/merge-largest.test
index c3ee96ca9c5..9273cf0da4f 100644
--- a/lld/test/pecoff/merge-largest.test
+++ b/lld/test/pecoff/merge-largest.test
@@ -19,6 +19,6 @@ READOBJ-NEXT: Sections [
READOBJ-NEXT: Section {
READOBJ-NEXT: Number: 1
READOBJ-NEXT: Name: .text (2E 74 65 78 74 00 00 00)
-READOBJ-NEXT: VirtualSize: 0x8
+READOBJ-NEXT: VirtualSize: 0x12
READOBJ-NEXT: VirtualAddress: 0x1000
READOBJ-NEXT: RawDataSize: 512
OpenPOWER on IntegriCloud