From b03e2929d3652b7547c1935772b4b830917a38bd Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Thu, 6 Feb 2014 00:54:53 +0000 Subject: [PATCH] doesSectionRequireSymbols is meaningless on ELF, remove. This is a nop. doesSectionRequireSymbols is only used from isSymbolLinkerVisible. isSymbolLinkerVisible only use from ELF was in if (!Asm.isSymbolLinkerVisible(Symbol) && !Symbol.isUndefined()) return false; if (Symbol.isTemporary()) return false; If the symbol is a temporary this code returns false and it is irrelevant if we take the first if or not. If the symbol is not a temporary, Asm.isSymbolLinkerVisible returns true without ever calling doesSectionRequireSymbols. This was an horrible leftover from when support for ELF was first added. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200894 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/MC/ELFObjectWriter.cpp | 3 --- lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp | 5 ----- 2 files changed, 8 deletions(-) diff --git a/lib/MC/ELFObjectWriter.cpp b/lib/MC/ELFObjectWriter.cpp index f6dbfced540..8b2ab02bec5 100644 --- a/lib/MC/ELFObjectWriter.cpp +++ b/lib/MC/ELFObjectWriter.cpp @@ -848,9 +848,6 @@ bool ELFObjectWriter::isInSymtab(const MCAssembler &Asm, if (!Symbol.isVariable() && Symbol.isUndefined() && !IsGlobal) return false; - if (!Asm.isSymbolLinkerVisible(Symbol) && !Symbol.isUndefined()) - return false; - if (Symbol.isTemporary()) return false; diff --git a/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp b/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp index dfd8a658bd4..1260208f40d 100644 --- a/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp +++ b/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp @@ -350,11 +350,6 @@ public: : X86AsmBackend(T, CPU), OSABI(_OSABI) { HasReliableSymbolDifference = true; } - - virtual bool doesSectionRequireSymbols(const MCSection &Section) const { - const MCSectionELF &ES = static_cast(Section); - return ES.getFlags() & ELF::SHF_MERGE; - } }; class ELFX86_32AsmBackend : public ELFX86AsmBackend {