mirror of
https://github.com/intel/llvm.git
synced 2026-02-08 08:57:43 +08:00
ELF: x86, x86-64, ARM, AArch64: Remove architecture name prefixes from class members.
llvm-svn: 233873
This commit is contained in:
@@ -43,14 +43,14 @@ private:
|
||||
|
||||
std::unique_ptr<GOTFile> _gotFile;
|
||||
AArch64LinkingContext &_ctx;
|
||||
AArch64TargetLayout<ELFT> &_aarch64Layout;
|
||||
AArch64TargetLayout<ELFT> &_layout;
|
||||
};
|
||||
|
||||
template <class ELFT>
|
||||
AArch64DynamicLibraryWriter<ELFT>::AArch64DynamicLibraryWriter(
|
||||
AArch64LinkingContext &ctx, AArch64TargetLayout<ELFT> &layout)
|
||||
: DynamicLibraryWriter<ELFT>(ctx, layout), _gotFile(new GOTFile(ctx)),
|
||||
_ctx(ctx), _aarch64Layout(layout) {}
|
||||
_ctx(ctx), _layout(layout) {}
|
||||
|
||||
template <class ELFT>
|
||||
bool AArch64DynamicLibraryWriter<ELFT>::createImplicitFiles(
|
||||
|
||||
@@ -42,14 +42,14 @@ private:
|
||||
|
||||
std::unique_ptr<GOTFile> _gotFile;
|
||||
AArch64LinkingContext &_ctx;
|
||||
AArch64TargetLayout<ELFT> &_aarch64Layout;
|
||||
AArch64TargetLayout<ELFT> &_layout;
|
||||
};
|
||||
|
||||
template <class ELFT>
|
||||
AArch64ExecutableWriter<ELFT>::AArch64ExecutableWriter(
|
||||
AArch64LinkingContext &ctx, AArch64TargetLayout<ELFT> &layout)
|
||||
: ExecutableWriter<ELFT>(ctx, layout), _gotFile(new GOTFile(ctx)),
|
||||
_ctx(ctx), _aarch64Layout(layout) {}
|
||||
_ctx(ctx), _layout(layout) {}
|
||||
|
||||
template <class ELFT>
|
||||
bool AArch64ExecutableWriter<ELFT>::createImplicitFiles(
|
||||
|
||||
@@ -17,9 +17,8 @@ using namespace lld;
|
||||
using namespace elf;
|
||||
|
||||
AArch64TargetHandler::AArch64TargetHandler(AArch64LinkingContext &ctx)
|
||||
: _ctx(ctx),
|
||||
_aarch64TargetLayout(new AArch64TargetLayout<AArch64ELFType>(ctx)),
|
||||
_aarch64RelocationHandler(new AArch64TargetRelocationHandler()) {}
|
||||
: _ctx(ctx), _targetLayout(new AArch64TargetLayout<AArch64ELFType>(ctx)),
|
||||
_relocationHandler(new AArch64TargetRelocationHandler()) {}
|
||||
|
||||
static const Registry::KindStrings kindStrings[] = {
|
||||
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
|
||||
@@ -37,10 +36,10 @@ std::unique_ptr<Writer> AArch64TargetHandler::getWriter() {
|
||||
switch (this->_ctx.getOutputELFType()) {
|
||||
case llvm::ELF::ET_EXEC:
|
||||
return llvm::make_unique<AArch64ExecutableWriter<AArch64ELFType>>(
|
||||
_ctx, *_aarch64TargetLayout.get());
|
||||
_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_DYN:
|
||||
return llvm::make_unique<AArch64DynamicLibraryWriter<AArch64ELFType>>(
|
||||
_ctx, *_aarch64TargetLayout.get());
|
||||
_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_REL:
|
||||
llvm_unreachable("TODO: support -r mode");
|
||||
default:
|
||||
|
||||
@@ -32,7 +32,7 @@ public:
|
||||
void registerRelocationNames(Registry ®istry) override;
|
||||
|
||||
const AArch64TargetRelocationHandler &getRelocationHandler() const override {
|
||||
return *_aarch64RelocationHandler;
|
||||
return *_relocationHandler;
|
||||
}
|
||||
|
||||
std::unique_ptr<Reader> getObjReader() override {
|
||||
@@ -47,8 +47,8 @@ public:
|
||||
|
||||
private:
|
||||
AArch64LinkingContext &_ctx;
|
||||
std::unique_ptr<AArch64TargetLayout<AArch64ELFType>> _aarch64TargetLayout;
|
||||
std::unique_ptr<AArch64TargetRelocationHandler> _aarch64RelocationHandler;
|
||||
std::unique_ptr<AArch64TargetLayout<AArch64ELFType>> _targetLayout;
|
||||
std::unique_ptr<AArch64TargetRelocationHandler> _relocationHandler;
|
||||
};
|
||||
|
||||
} // end namespace elf
|
||||
|
||||
@@ -16,9 +16,8 @@ using namespace lld;
|
||||
using namespace elf;
|
||||
|
||||
ARMTargetHandler::ARMTargetHandler(ARMLinkingContext &ctx)
|
||||
: _ctx(ctx), _armTargetLayout(new ARMTargetLayout<ARMELFType>(ctx)),
|
||||
_armRelocationHandler(
|
||||
new ARMTargetRelocationHandler(*_armTargetLayout.get())) {}
|
||||
: _ctx(ctx), _targetLayout(new ARMTargetLayout<ARMELFType>(ctx)),
|
||||
_relocationHandler(new ARMTargetRelocationHandler(*_targetLayout)) {}
|
||||
|
||||
static const Registry::KindStrings kindStrings[] = {
|
||||
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
|
||||
@@ -35,8 +34,8 @@ void ARMTargetHandler::registerRelocationNames(Registry ®istry) {
|
||||
std::unique_ptr<Writer> ARMTargetHandler::getWriter() {
|
||||
switch (this->_ctx.getOutputELFType()) {
|
||||
case llvm::ELF::ET_EXEC:
|
||||
return llvm::make_unique<ARMExecutableWriter<ARMELFType>>(
|
||||
_ctx, *_armTargetLayout.get());
|
||||
return llvm::make_unique<ARMExecutableWriter<ARMELFType>>(_ctx,
|
||||
*_targetLayout);
|
||||
default:
|
||||
llvm_unreachable("unsupported output type");
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
void registerRelocationNames(Registry ®istry) override;
|
||||
|
||||
const ARMTargetRelocationHandler &getRelocationHandler() const override {
|
||||
return *_armRelocationHandler;
|
||||
return *_relocationHandler;
|
||||
}
|
||||
|
||||
std::unique_ptr<Reader> getObjReader() override {
|
||||
@@ -79,8 +79,8 @@ public:
|
||||
|
||||
private:
|
||||
ARMLinkingContext &_ctx;
|
||||
std::unique_ptr<ARMTargetLayout<ARMELFType>> _armTargetLayout;
|
||||
std::unique_ptr<ARMTargetRelocationHandler> _armRelocationHandler;
|
||||
std::unique_ptr<ARMTargetLayout<ARMELFType>> _targetLayout;
|
||||
std::unique_ptr<ARMTargetRelocationHandler> _relocationHandler;
|
||||
};
|
||||
|
||||
} // end namespace elf
|
||||
|
||||
@@ -27,10 +27,10 @@ std::unique_ptr<Writer> HexagonTargetHandler::getWriter() {
|
||||
switch (_ctx.getOutputELFType()) {
|
||||
case llvm::ELF::ET_EXEC:
|
||||
return llvm::make_unique<HexagonExecutableWriter<HexagonELFType>>(
|
||||
_ctx, *_targetLayout.get());
|
||||
_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_DYN:
|
||||
return llvm::make_unique<HexagonDynamicLibraryWriter<HexagonELFType>>(
|
||||
_ctx, *_targetLayout.get());
|
||||
_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_REL:
|
||||
llvm_unreachable("TODO: support -r mode");
|
||||
default:
|
||||
|
||||
@@ -42,14 +42,14 @@ private:
|
||||
|
||||
std::unique_ptr<GOTFile> _gotFile;
|
||||
X86LinkingContext &_ctx;
|
||||
X86TargetLayout<ELFT> &_x86Layout;
|
||||
X86TargetLayout<ELFT> &_layout;
|
||||
};
|
||||
|
||||
template <class ELFT>
|
||||
X86DynamicLibraryWriter<ELFT>::X86DynamicLibraryWriter(
|
||||
X86LinkingContext &ctx, X86TargetLayout<ELFT> &layout)
|
||||
: DynamicLibraryWriter<ELFT>(ctx, layout), _gotFile(new GOTFile(ctx)),
|
||||
_ctx(ctx), _x86Layout(layout) {}
|
||||
_ctx(ctx), _layout(layout) {}
|
||||
|
||||
template <class ELFT>
|
||||
bool X86DynamicLibraryWriter<ELFT>::createImplicitFiles(
|
||||
|
||||
@@ -34,13 +34,13 @@ protected:
|
||||
|
||||
private:
|
||||
X86LinkingContext &_ctx;
|
||||
X86TargetLayout<ELFT> &_x86Layout;
|
||||
X86TargetLayout<ELFT> &_layout;
|
||||
};
|
||||
|
||||
template <class ELFT>
|
||||
X86ExecutableWriter<ELFT>::X86ExecutableWriter(X86LinkingContext &ctx,
|
||||
X86TargetLayout<ELFT> &layout)
|
||||
: ExecutableWriter<ELFT>(ctx, layout), _ctx(ctx), _x86Layout(layout) {}
|
||||
: ExecutableWriter<ELFT>(ctx, layout), _ctx(ctx), _layout(layout) {}
|
||||
|
||||
template <class ELFT>
|
||||
bool X86ExecutableWriter<ELFT>::createImplicitFiles(
|
||||
|
||||
@@ -21,11 +21,11 @@ using namespace llvm::ELF;
|
||||
std::unique_ptr<Writer> X86TargetHandler::getWriter() {
|
||||
switch (_ctx.getOutputELFType()) {
|
||||
case llvm::ELF::ET_EXEC:
|
||||
return llvm::make_unique<X86ExecutableWriter<X86ELFType>>(
|
||||
_ctx, *_x86TargetLayout.get());
|
||||
return llvm::make_unique<X86ExecutableWriter<X86ELFType>>(_ctx,
|
||||
*_targetLayout);
|
||||
case llvm::ELF::ET_DYN:
|
||||
return llvm::make_unique<X86DynamicLibraryWriter<X86ELFType>>(
|
||||
_ctx, *_x86TargetLayout.get());
|
||||
_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_REL:
|
||||
llvm_unreachable("TODO: support -r mode");
|
||||
default:
|
||||
@@ -46,5 +46,5 @@ void X86TargetHandler::registerRelocationNames(Registry ®istry) {
|
||||
}
|
||||
|
||||
X86TargetHandler::X86TargetHandler(X86LinkingContext &ctx)
|
||||
: _ctx(ctx), _x86TargetLayout(new X86TargetLayout<X86ELFType>(ctx)),
|
||||
_x86RelocationHandler(new X86TargetRelocationHandler()) {}
|
||||
: _ctx(ctx), _targetLayout(new X86TargetLayout<X86ELFType>(ctx)),
|
||||
_relocationHandler(new X86TargetRelocationHandler()) {}
|
||||
|
||||
@@ -32,7 +32,7 @@ public:
|
||||
void registerRelocationNames(Registry ®istry) override;
|
||||
|
||||
const X86TargetRelocationHandler &getRelocationHandler() const override {
|
||||
return *_x86RelocationHandler;
|
||||
return *_relocationHandler;
|
||||
}
|
||||
|
||||
std::unique_ptr<Reader> getObjReader() override {
|
||||
@@ -47,8 +47,8 @@ public:
|
||||
|
||||
protected:
|
||||
X86LinkingContext &_ctx;
|
||||
std::unique_ptr<X86TargetLayout<X86ELFType>> _x86TargetLayout;
|
||||
std::unique_ptr<X86TargetRelocationHandler> _x86RelocationHandler;
|
||||
std::unique_ptr<X86TargetLayout<X86ELFType>> _targetLayout;
|
||||
std::unique_ptr<X86TargetRelocationHandler> _relocationHandler;
|
||||
};
|
||||
} // end namespace elf
|
||||
} // end namespace lld
|
||||
|
||||
@@ -15,9 +15,8 @@ using namespace lld;
|
||||
using namespace elf;
|
||||
|
||||
ExampleTargetHandler::ExampleTargetHandler(ExampleLinkingContext &c)
|
||||
: X86_64TargetHandler(c), _exampleContext(c) {}
|
||||
: X86_64TargetHandler(c), _ctx(c) {}
|
||||
|
||||
std::unique_ptr<Writer> ExampleTargetHandler::getWriter() {
|
||||
return std::unique_ptr<Writer>(
|
||||
new X86_64ExecutableWriter(_exampleContext, *_x86_64TargetLayout));
|
||||
return llvm::make_unique<X86_64ExecutableWriter>(_ctx, *_targetLayout);
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
std::unique_ptr<Writer> getWriter() override;
|
||||
|
||||
private:
|
||||
ExampleLinkingContext &_exampleContext;
|
||||
ExampleLinkingContext &_ctx;
|
||||
};
|
||||
} // end namespace elf
|
||||
} // end namespace lld
|
||||
|
||||
@@ -97,7 +97,7 @@ std::error_code X86_64TargetRelocationHandler::applyRelocation(
|
||||
case R_X86_64_TPOFF64:
|
||||
case R_X86_64_DTPOFF32:
|
||||
case R_X86_64_TPOFF32: {
|
||||
_tlsSize = _x86_64Layout.getTLSSize();
|
||||
_tlsSize = _layout.getTLSSize();
|
||||
if (ref.kindValue() == R_X86_64_TPOFF32 ||
|
||||
ref.kindValue() == R_X86_64_DTPOFF32) {
|
||||
write32le(location, targetVAddress - _tlsSize);
|
||||
@@ -126,8 +126,7 @@ std::error_code X86_64TargetRelocationHandler::applyRelocation(
|
||||
for (const Reference *r : *target) {
|
||||
if (r->kindValue() == R_X86_64_JUMP_SLOT) {
|
||||
uint32_t index;
|
||||
if (!_x86_64Layout.getPLTRelocationTable()->getRelocationIndex(*r,
|
||||
index))
|
||||
if (!_layout.getPLTRelocationTable()->getRelocationIndex(*r, index))
|
||||
llvm_unreachable("Relocation doesn't exist");
|
||||
reloc32(location, 0, index, 0);
|
||||
break;
|
||||
|
||||
@@ -21,7 +21,7 @@ class X86_64TargetLayout;
|
||||
class X86_64TargetRelocationHandler final : public TargetRelocationHandler {
|
||||
public:
|
||||
X86_64TargetRelocationHandler(X86_64TargetLayout &layout)
|
||||
: _tlsSize(0), _x86_64Layout(layout) {}
|
||||
: _tlsSize(0), _layout(layout) {}
|
||||
|
||||
std::error_code applyRelocation(ELFWriter &, llvm::FileOutputBuffer &,
|
||||
const lld::AtomLayout &,
|
||||
@@ -30,7 +30,7 @@ public:
|
||||
private:
|
||||
// Cached size of the TLS segment.
|
||||
mutable uint64_t _tlsSize;
|
||||
X86_64TargetLayout &_x86_64Layout;
|
||||
X86_64TargetLayout &_layout;
|
||||
};
|
||||
|
||||
} // end namespace elf
|
||||
|
||||
@@ -17,9 +17,8 @@ using namespace lld;
|
||||
using namespace elf;
|
||||
|
||||
X86_64TargetHandler::X86_64TargetHandler(X86_64LinkingContext &ctx)
|
||||
: _ctx(ctx), _x86_64TargetLayout(new X86_64TargetLayout(ctx)),
|
||||
_x86_64RelocationHandler(
|
||||
new X86_64TargetRelocationHandler(*_x86_64TargetLayout.get())) {}
|
||||
: _ctx(ctx), _targetLayout(new X86_64TargetLayout(ctx)),
|
||||
_relocationHandler(new X86_64TargetRelocationHandler(*_targetLayout)) {}
|
||||
|
||||
static const Registry::KindStrings kindStrings[] = {
|
||||
#define ELF_RELOC(name, value) LLD_KIND_STRING_ENTRY(name),
|
||||
@@ -37,11 +36,9 @@ void X86_64TargetHandler::registerRelocationNames(Registry ®istry) {
|
||||
std::unique_ptr<Writer> X86_64TargetHandler::getWriter() {
|
||||
switch (this->_ctx.getOutputELFType()) {
|
||||
case llvm::ELF::ET_EXEC:
|
||||
return llvm::make_unique<X86_64ExecutableWriter>(
|
||||
_ctx, *_x86_64TargetLayout.get());
|
||||
return llvm::make_unique<X86_64ExecutableWriter>(_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_DYN:
|
||||
return llvm::make_unique<X86_64DynamicLibraryWriter>(
|
||||
_ctx, *_x86_64TargetLayout.get());
|
||||
return llvm::make_unique<X86_64DynamicLibraryWriter>(_ctx, *_targetLayout);
|
||||
case llvm::ELF::ET_REL:
|
||||
llvm_unreachable("TODO: support -r mode");
|
||||
default:
|
||||
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
void registerRelocationNames(Registry ®istry) override;
|
||||
|
||||
const X86_64TargetRelocationHandler &getRelocationHandler() const override {
|
||||
return *_x86_64RelocationHandler;
|
||||
return *_relocationHandler;
|
||||
}
|
||||
|
||||
std::unique_ptr<Reader> getObjReader() override {
|
||||
@@ -51,8 +51,8 @@ public:
|
||||
|
||||
protected:
|
||||
X86_64LinkingContext &_ctx;
|
||||
std::unique_ptr<X86_64TargetLayout> _x86_64TargetLayout;
|
||||
std::unique_ptr<X86_64TargetRelocationHandler> _x86_64RelocationHandler;
|
||||
std::unique_ptr<X86_64TargetLayout> _targetLayout;
|
||||
std::unique_ptr<X86_64TargetRelocationHandler> _relocationHandler;
|
||||
};
|
||||
|
||||
} // end namespace elf
|
||||
|
||||
Reference in New Issue
Block a user