summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2015-04-01 23:55:10 +0000
committerRui Ueyama <ruiu@google.com>2015-04-01 23:55:10 +0000
commit4507003622ecb757340ba97a8049319a2ddd249c (patch)
tree4bf090811bb5cdd66ff42ef4c0e42e80e8dac226
parent56f84515a25d6b0de2dac94c4a3cd4a291fc7416 (diff)
downloadbcm5719-llvm-4507003622ecb757340ba97a8049319a2ddd249c.tar.gz
bcm5719-llvm-4507003622ecb757340ba97a8049319a2ddd249c.zip
ELF: Remove <Arch>TargetHandler::kindString.
<Arch>TargetHandler::kindString is a static member variable containg a list of names of relocation types. The member is used only by one function, registerRelocationNames, so they don't have to be a static member. This patch makes the visibility of the data narrower by making them file-scoped variables in small files. llvm-svn: 233867
-rw-r--r--lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.cpp16
-rw-r--r--lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.h1
-rw-r--r--lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.cpp14
-rw-r--r--lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h1
-rw-r--r--lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp14
-rw-r--r--lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.h1
-rw-r--r--lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp14
-rw-r--r--lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h2
-rw-r--r--lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp6
-rw-r--r--lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.h1
-rw-r--r--lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.cpp18
-rw-r--r--lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.h1
12 files changed, 36 insertions, 53 deletions
diff --git a/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.cpp b/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.cpp
index bc7b8744fa2..1062367b1ee 100644
--- a/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.cpp
@@ -21,6 +21,13 @@ AArch64TargetHandler::AArch64TargetHandler(AArch64LinkingContext &ctx)
_aarch64TargetLayout(new AArch64TargetLayout<AArch64ELFType>(ctx)),
_aarch64RelocationHandler(new AArch64TargetRelocationHandler()) {}
+static const Registry::KindStrings kindStrings[] = {
+#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
+#include "llvm/Support/ELFRelocs/AArch64.def"
+#undef ELF_RELOC
+ LLD_KIND_STRING_END
+};
+
void AArch64TargetHandler::registerRelocationNames(Registry &registry) {
registry.addKindTable(Reference::KindNamespace::ELF,
Reference::KindArch::AArch64, kindStrings);
@@ -40,12 +47,3 @@ std::unique_ptr<Writer> AArch64TargetHandler::getWriter() {
llvm_unreachable("unsupported output type");
}
}
-
-#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings AArch64TargetHandler::kindStrings[] = {
-#include "llvm/Support/ELFRelocs/AArch64.def"
- LLD_KIND_STRING_END
-};
-
-#undef ELF_RELOC
diff --git a/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.h b/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.h
index cbbe672467c..0d84fa07efc 100644
--- a/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/AArch64/AArch64TargetHandler.h
@@ -46,7 +46,6 @@ public:
std::unique_ptr<Writer> getWriter() override;
private:
- static const Registry::KindStrings kindStrings[];
AArch64LinkingContext &_ctx;
std::unique_ptr<AArch64TargetLayout<AArch64ELFType>> _aarch64TargetLayout;
std::unique_ptr<AArch64TargetRelocationHandler> _aarch64RelocationHandler;
diff --git a/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.cpp b/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.cpp
index c9deacb7378..be64563a1e4 100644
--- a/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.cpp
@@ -20,6 +20,13 @@ ARMTargetHandler::ARMTargetHandler(ARMLinkingContext &ctx)
_armRelocationHandler(
new ARMTargetRelocationHandler(*_armTargetLayout.get())) {}
+static const Registry::KindStrings kindStrings[] = {
+#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
+#include "llvm/Support/ELFRelocs/ARM.def"
+#undef ELF_RELOC
+ LLD_KIND_STRING_END
+};
+
void ARMTargetHandler::registerRelocationNames(Registry &registry) {
registry.addKindTable(Reference::KindNamespace::ELF, Reference::KindArch::ARM,
kindStrings);
@@ -34,10 +41,3 @@ std::unique_ptr<Writer> ARMTargetHandler::getWriter() {
llvm_unreachable("unsupported output type");
}
}
-
-#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings ARMTargetHandler::kindStrings[] = {
-#include "llvm/Support/ELFRelocs/ARM.def"
- LLD_KIND_STRING_END
-};
diff --git a/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h b/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h
index d8bd0b70fb0..61b405f775c 100644
--- a/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h
@@ -78,7 +78,6 @@ public:
std::unique_ptr<Writer> getWriter() override;
private:
- static const Registry::KindStrings kindStrings[];
ARMLinkingContext &_ctx;
std::unique_ptr<ARMTargetLayout<ARMELFType>> _armTargetLayout;
std::unique_ptr<ARMTargetRelocationHandler> _armRelocationHandler;
diff --git a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp
index 48032c3d30e..2c19ac9ebce 100644
--- a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.cpp
@@ -314,16 +314,14 @@ void elf::HexagonLinkingContext::addPasses(PassManager &pm) {
ELFLinkingContext::addPasses(pm);
}
-void HexagonTargetHandler::registerRelocationNames(Registry &registry) {
- registry.addKindTable(Reference::KindNamespace::ELF,
- Reference::KindArch::Hexagon, kindStrings);
-}
-
+static const Registry::KindStrings kindStrings[] = {
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings HexagonTargetHandler::kindStrings[] = {
#include "llvm/Support/ELFRelocs/Hexagon.def"
+#undef ELF_RELOC
LLD_KIND_STRING_END
};
-#undef ELF_RELOC
+void HexagonTargetHandler::registerRelocationNames(Registry &registry) {
+ registry.addKindTable(Reference::KindNamespace::ELF,
+ Reference::KindArch::Hexagon, kindStrings);
+}
diff --git a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.h b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.h
index ba00699f6c1..22c502c4c70 100644
--- a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonTargetHandler.h
@@ -117,7 +117,6 @@ public:
std::unique_ptr<Writer> getWriter() override;
private:
- static const Registry::KindStrings kindStrings[];
HexagonLinkingContext &_ctx;
std::unique_ptr<HexagonRuntimeFile<HexagonELFType>> _runtimeFile;
std::unique_ptr<HexagonTargetLayout<HexagonELFType>> _targetLayout;
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp b/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp
index f60ab63c6af..0391011ab30 100644
--- a/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.cpp
@@ -12,15 +12,10 @@
using namespace lld;
using namespace elf;
-void MipsRelocationStringTable::registerTable(Registry &registry) {
- registry.addKindTable(Reference::KindNamespace::ELF,
- Reference::KindArch::Mips, kindStrings);
-}
-
+const Registry::KindStrings kindStrings[] = {
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings MipsRelocationStringTable::kindStrings[] = {
#include "llvm/Support/ELFRelocs/Mips.def"
+#undef ELF_RELOC
LLD_KIND_STRING_ENTRY(LLD_R_MIPS_GLOBAL_GOT),
LLD_KIND_STRING_ENTRY(LLD_R_MIPS_32_HI16),
LLD_KIND_STRING_ENTRY(LLD_R_MIPS_64_HI16),
@@ -32,4 +27,7 @@ const Registry::KindStrings MipsRelocationStringTable::kindStrings[] = {
LLD_KIND_STRING_END
};
-#undef ELF_RELOC
+void MipsRelocationStringTable::registerTable(Registry &registry) {
+ registry.addKindTable(Reference::KindNamespace::ELF,
+ Reference::KindArch::Mips, kindStrings);
+}
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h b/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h
index 3b979051c38..a1491b60e6d 100644
--- a/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/Mips/MipsTargetHandler.h
@@ -92,8 +92,6 @@ public:
/// \brief Auxiliary class holds relocation's names table.
class MipsRelocationStringTable {
- static const Registry::KindStrings kindStrings[];
-
public:
static void registerTable(Registry &registry);
};
diff --git a/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp b/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp
index bf9fed63e9d..05cbc224596 100644
--- a/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.cpp
@@ -33,15 +33,13 @@ std::unique_ptr<Writer> X86TargetHandler::getWriter() {
}
}
+static const Registry::KindStrings kindStrings[] = {
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings X86TargetHandler::kindStrings[] = {
#include "llvm/Support/ELFRelocs/i386.def"
+#undef ELF_RELOC
LLD_KIND_STRING_END
};
-#undef ELF_RELOC
-
void X86TargetHandler::registerRelocationNames(Registry &registry) {
registry.addKindTable(Reference::KindNamespace::ELF, Reference::KindArch::x86,
kindStrings);
diff --git a/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.h b/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.h
index 7d712a71729..5b0af78d3d2 100644
--- a/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/X86/X86TargetHandler.h
@@ -46,7 +46,6 @@ public:
std::unique_ptr<Writer> getWriter() override;
protected:
- static const Registry::KindStrings kindStrings[];
X86LinkingContext &_ctx;
std::unique_ptr<X86TargetLayout<X86ELFType>> _x86TargetLayout;
std::unique_ptr<X86TargetRelocationHandler> _x86RelocationHandler;
diff --git a/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.cpp b/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.cpp
index 5c0b13b7535..558754c6e88 100644
--- a/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.cpp
+++ b/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.cpp
@@ -21,6 +21,14 @@ X86_64TargetHandler::X86_64TargetHandler(X86_64LinkingContext &ctx)
_x86_64RelocationHandler(
new X86_64TargetRelocationHandler(*_x86_64TargetLayout.get())) {}
+static const Registry::KindStrings kindStrings[] = {
+#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
+#include "llvm/Support/ELFRelocs/x86_64.def"
+#undef ELF_RELOC
+ LLD_KIND_STRING_ENTRY(LLD_R_X86_64_GOTRELINDEX),
+ LLD_KIND_STRING_END
+};
+
void X86_64TargetHandler::registerRelocationNames(Registry &registry) {
registry.addKindTable(Reference::KindNamespace::ELF,
Reference::KindArch::x86_64, kindStrings);
@@ -40,13 +48,3 @@ std::unique_ptr<Writer> X86_64TargetHandler::getWriter() {
llvm_unreachable("unsupported output type");
}
}
-
-#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
-
-const Registry::KindStrings X86_64TargetHandler::kindStrings[] = {
-#include "llvm/Support/ELFRelocs/x86_64.def"
- LLD_KIND_STRING_ENTRY(LLD_R_X86_64_GOTRELINDEX),
- LLD_KIND_STRING_END
-};
-
-#undef ELF_RELOC
diff --git a/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.h b/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.h
index 4968ac31032..2870aa77fd4 100644
--- a/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.h
+++ b/lld/lib/ReaderWriter/ELF/X86_64/X86_64TargetHandler.h
@@ -50,7 +50,6 @@ public:
std::unique_ptr<Writer> getWriter() override;
protected:
- static const Registry::KindStrings kindStrings[];
X86_64LinkingContext &_ctx;
std::unique_ptr<X86_64TargetLayout> _x86_64TargetLayout;
std::unique_ptr<X86_64TargetRelocationHandler> _x86_64RelocationHandler;
OpenPOWER on IntegriCloud