AArch64GNUInfo.h revision 551ae4ebd3e9d137ea668fb83ae4a55b8cfba451
1//===- AArch64GNUInfo.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_AARCH64_AARCH64GNUINFO_H
10#define TARGET_AARCH64_AARCH64GNUINFO_H
11#include <mcld/Target/GNUInfo.h>
12
13#include <llvm/Support/ELF.h>
14
15namespace mcld {
16
17class AArch64GNUInfo : public GNUInfo
18{
19public:
20  AArch64GNUInfo(const llvm::Triple& pTriple) : GNUInfo(pTriple) { }
21
22  uint32_t machine() const { return llvm::ELF::EM_AARCH64; }
23
24  uint64_t abiPageSize() const { return 0x10000; }
25
26  uint64_t defaultTextSegmentAddr() const { return 0x400000; }
27
28  // There are no processor-specific flags so this field shall contain zero.
29  uint64_t flags() const { return 0x0; }
30};
31
32} // namespace of mcld
33
34#endif
35
36