1//===- X86ELFDynamic.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 "X86ELFDynamic.h"
10
11#include "mcld/LD/ELFFileFormat.h"
12
13namespace mcld {
14
15X86ELFDynamic::X86ELFDynamic(const GNULDBackend& pParent,
16                             const LinkerConfig& pConfig)
17    : ELFDynamic(pParent, pConfig) {
18}
19
20X86ELFDynamic::~X86ELFDynamic() {
21}
22
23void X86ELFDynamic::reserveTargetEntries(const ELFFileFormat& pFormat) {
24  // reservePLTGOT
25  if (pFormat.hasGOTPLT())
26    reserveOne(llvm::ELF::DT_PLTGOT);
27}
28
29void X86ELFDynamic::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