summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h
diff options
context:
space:
mode:
Diffstat (limited to 'lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h')
-rw-r--r--lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h17
1 files changed, 2 insertions, 15 deletions
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h b/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h
index 6275ef8e361..27997f636df 100644
--- a/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h
+++ b/lld/lib/ReaderWriter/ELF/Mips/MipsExecutableWriter.h
@@ -44,16 +44,7 @@ protected:
LLD_UNIQUE_BUMP_PTR(DynamicSymbolTable<ELFT>) createDynamicSymbolTable();
private:
- void addDefaultAtoms() {
- if (this->_context.isDynamic()) {
- _mipsRuntimeFile->addAbsoluteAtom("_GLOBAL_OFFSET_TABLE_");
- _mipsRuntimeFile->addAbsoluteAtom("_gp");
- _mipsRuntimeFile->addAbsoluteAtom("_gp_disp");
- }
- }
-
MipsELFWriter<ELFT> _writeHelper;
- std::unique_ptr<MipsRuntimeFile<ELFT>> _mipsRuntimeFile;
MipsLinkingContext &_mipsContext;
MipsTargetLayout<Mips32ElELFType> &_mipsTargetLayout;
};
@@ -61,9 +52,7 @@ private:
template <class ELFT>
MipsExecutableWriter<ELFT>::MipsExecutableWriter(MipsLinkingContext &context,
MipsTargetLayout<ELFT> &layout)
- : ExecutableWriter<ELFT>(context, layout),
- _writeHelper(context, layout),
- _mipsRuntimeFile(new MipsRuntimeFile<ELFT>(context)),
+ : ExecutableWriter<ELFT>(context, layout), _writeHelper(context, layout),
_mipsContext(context), _mipsTargetLayout(layout) {}
template <class ELFT>
@@ -84,9 +73,7 @@ template <class ELFT>
bool MipsExecutableWriter<ELFT>::createImplicitFiles(
std::vector<std::unique_ptr<File>> &result) {
ExecutableWriter<ELFT>::createImplicitFiles(result);
- // Add the default atoms as defined for mips
- addDefaultAtoms();
- result.push_back(std::move(_mipsRuntimeFile));
+ result.push_back(std::move(_writeHelper.createRuntimeFile()));
return true;
}
OpenPOWER on IntegriCloud