[lld] 5188f55 - [ELF] Move ObjFile<ELFT>::{getLocalSymbols,getGlobalSymbols} to non-template ELFFileBase. NFC
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 30 00:50:25 PST 2021
Author: Fangrui Song
Date: 2021-11-30T00:50:19-08:00
New Revision: 5188f55d32a9cd95c3cb668ab2d762ca4e0c8d6b
URL: https://github.com/llvm/llvm-project/commit/5188f55d32a9cd95c3cb668ab2d762ca4e0c8d6b
DIFF: https://github.com/llvm/llvm-project/commit/5188f55d32a9cd95c3cb668ab2d762ca4e0c8d6b.diff
LOG: [ELF] Move ObjFile<ELFT>::{getLocalSymbols,getGlobalSymbols} to non-template ELFFileBase. NFC
Added:
Modified:
lld/ELF/InputFiles.cpp
lld/ELF/InputFiles.h
Removed:
################################################################################
diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp
index b00204183db7d..040f71478547c 100644
--- a/lld/ELF/InputFiles.cpp
+++ b/lld/ELF/InputFiles.cpp
@@ -395,16 +395,6 @@ uint32_t ObjFile<ELFT>::getSectionIndex(const Elf_Sym &sym) const {
this);
}
-template <class ELFT> ArrayRef<Symbol *> ObjFile<ELFT>::getLocalSymbols() {
- if (this->symbols.empty())
- return {};
- return makeArrayRef(this->symbols).slice(1, this->firstGlobal - 1);
-}
-
-template <class ELFT> ArrayRef<Symbol *> ObjFile<ELFT>::getGlobalSymbols() {
- return makeArrayRef(this->symbols).slice(this->firstGlobal);
-}
-
template <class ELFT> void ObjFile<ELFT>::parse(bool ignoreComdats) {
// Read a section table. justSymbols is usually false.
if (this->justSymbols)
diff --git a/lld/ELF/InputFiles.h b/lld/ELF/InputFiles.h
index f3a45385af2e3..5bbfb7656e472 100644
--- a/lld/ELF/InputFiles.h
+++ b/lld/ELF/InputFiles.h
@@ -168,6 +168,15 @@ class ELFFileBase : public InputFile {
StringRef getStringTable() const { return stringTable; }
+ ArrayRef<Symbol *> getLocalSymbols() {
+ if (symbols.empty())
+ return {};
+ return llvm::makeArrayRef(symbols).slice(1, firstGlobal - 1);
+ }
+ ArrayRef<Symbol *> getGlobalSymbols() {
+ return llvm::makeArrayRef(symbols).slice(firstGlobal);
+ }
+
template <typename ELFT> typename ELFT::SymRange getELFSyms() const {
return typename ELFT::SymRange(
reinterpret_cast<const typename ELFT::Sym *>(elfSyms), numELFSyms);
@@ -197,9 +206,6 @@ template <class ELFT> class ObjFile : public ELFFileBase {
return this->ELFFileBase::getObj<ELFT>();
}
- ArrayRef<Symbol *> getLocalSymbols();
- ArrayRef<Symbol *> getGlobalSymbols();
-
ObjFile(MemoryBufferRef m, StringRef archiveName) : ELFFileBase(ObjKind, m) {
this->archiveName = std::string(archiveName);
}
More information about the llvm-commits
mailing list