1 //===- HexagonELFDynamic.cpp ----------------------------------------------===// 2 // 3 // The MCLinker Project 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 #include "HexagonELFDynamic.h" 10 11 #include "mcld/LD/ELFFileFormat.h" 12 13 namespace mcld { 14 HexagonELFDynamic(const GNULDBackend & pParent,const LinkerConfig & pConfig)15HexagonELFDynamic::HexagonELFDynamic(const GNULDBackend& pParent, 16 const LinkerConfig& pConfig) 17 : ELFDynamic(pParent, pConfig) { 18 } 19 ~HexagonELFDynamic()20HexagonELFDynamic::~HexagonELFDynamic() { 21 } 22 reserveTargetEntries(const ELFFileFormat & pFormat)23void HexagonELFDynamic::reserveTargetEntries(const ELFFileFormat& pFormat) { 24 // reservePLTGOT 25 if (pFormat.hasGOTPLT()) 26 reserveOne(llvm::ELF::DT_PLTGOT); 27 } 28 applyTargetEntries(const ELFFileFormat & pFormat)29void HexagonELFDynamic::applyTargetEntries(const ELFFileFormat& pFormat) { 30 // applyPLTGOT 31 if (pFormat.hasGOTPLT()) 32 applyOne(llvm::ELF::DT_PLTGOT, pFormat.getGOTPLT().addr()); 33 } 34 35 } // namespace mcld 36