1 //===- ARMELFDynamic.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 "ARMELFDynamic.h" 10 11 #include <mcld/LD/ELFFileFormat.h> 12 13 using namespace mcld; 14 ARMELFDynamic(const GNULDBackend & pParent,const LinkerConfig & pConfig)15ARMELFDynamic::ARMELFDynamic(const GNULDBackend& pParent, 16 const LinkerConfig& pConfig) 17 : ELFDynamic(pParent, pConfig) 18 { 19 } 20 ~ARMELFDynamic()21ARMELFDynamic::~ARMELFDynamic() 22 { 23 } 24 reserveTargetEntries(const ELFFileFormat & pFormat)25void ARMELFDynamic::reserveTargetEntries(const ELFFileFormat& pFormat) 26 { 27 // reservePLTGOT 28 if (pFormat.hasGOT()) 29 reserveOne(llvm::ELF::DT_PLTGOT); 30 } 31 applyTargetEntries(const ELFFileFormat & pFormat)32void ARMELFDynamic::applyTargetEntries(const ELFFileFormat& pFormat) 33 { 34 // applyPLTGOT 35 if (pFormat.hasGOT()) 36 applyOne(llvm::ELF::DT_PLTGOT, pFormat.getGOT().addr()); 37 } 38 39