1//===- HexagonGOT.h -------------------------------------------------------===//
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#ifndef TARGET_HEXAGON_HEXAGONGOT_H_
10#define TARGET_HEXAGON_HEXAGONGOT_H_
11
12#include "mcld/Target/GOT.h"
13
14namespace mcld {
15
16class LDSection;
17class SectionData;
18
19/** \class HexagonGOTEntry
20 *  \brief GOT Entry with size of 4 bytes
21 */
22class HexagonGOTEntry : public GOT::Entry<4> {
23 public:
24  HexagonGOTEntry(uint64_t pContent, SectionData* pParent)
25      : GOT::Entry<4>(pContent, pParent) {}
26};
27
28/** \class HexagonGOT
29 *  \brief Hexagon Global Offset Table.
30 */
31
32class HexagonGOT : public GOT {
33 public:
34  explicit HexagonGOT(LDSection& pSection);
35
36  ~HexagonGOT();
37
38  HexagonGOTEntry* create();
39};
40
41}  // namespace mcld
42
43#endif  // TARGET_HEXAGON_HEXAGONGOT_H_
44