1d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//===- ARMGNUInfo.h -------------------------------------------------------===//
2d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//
3d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//                     The MCLinker Project
4d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//
5d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao// This file is distributed under the University of Illinois Open Source
6d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao// License. See LICENSE.TXT for details.
7d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//
8d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao//===----------------------------------------------------------------------===//
9551ae4ebd3e9d137ea668fb83ae4a55b8cfba451Stephen Hines#ifndef TARGET_ARM_ARMGNUINFO_H
10551ae4ebd3e9d137ea668fb83ae4a55b8cfba451Stephen Hines#define TARGET_ARM_ARMGNUINFO_H
11d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao#include <mcld/Target/GNUInfo.h>
12d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
13d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao#include <llvm/Support/ELF.h>
14d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
15d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liaonamespace mcld {
16d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
17d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liaoclass ARMGNUInfo : public GNUInfo
18d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao{
19d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liaopublic:
20d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao  ARMGNUInfo(const llvm::Triple& pTriple) : GNUInfo(pTriple) { }
21d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
22d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao  uint32_t machine() const { return llvm::ELF::EM_ARM; }
23d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
246f75755c9204b1d8817ae5a65a2f7e5af0ec3f70Stephen Hines  uint64_t defaultTextSegmentAddr() const { return 0x8000; }
256f75755c9204b1d8817ae5a65a2f7e5af0ec3f70Stephen Hines
2687f34658dec9097d987d254a990ea7f311bfc95fStephen Hines  uint64_t flags() const { return llvm::ELF::EF_ARM_EABI_VER5; }
27d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao};
28d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
29d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao} // namespace of mcld
30d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
31d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao#endif
32d0fbbb227051be16931a1aa9b4a7722ac039c698Shih-wei Liao
33