Home | History | Annotate | Download | only in Hexagon
      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 
     14 namespace mcld {
     15 
     16 class LDSection;
     17 class SectionData;
     18 
     19 /** \class HexagonGOTEntry
     20  *  \brief GOT Entry with size of 4 bytes
     21  */
     22 class 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 
     32 class 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