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