diff options
Diffstat (limited to 'lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp')
| -rw-r--r-- | lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp b/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp index 377b533be898..3a382c165e7c 100644 --- a/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp +++ b/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp @@ -1,4 +1,4 @@ -//===-- AArch64TargetInfo.cpp - AArch64 Target Implementation -------------===// +//===-- AArch64TargetInfo.cpp - AArch64 Target Implementation -----------------===// // // The LLVM Compiler Infrastructure // @@ -6,19 +6,26 @@ // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// -// -// This file contains the key registration step for the architecture. -// -//===----------------------------------------------------------------------===// -#include "AArch64.h" -#include "llvm/IR/Module.h" +#include "llvm/ADT/Triple.h" #include "llvm/Support/TargetRegistry.h" using namespace llvm; -Target llvm::TheAArch64Target; +namespace llvm { +Target TheAArch64leTarget; +Target TheAArch64beTarget; +Target TheARM64leTarget; +Target TheARM64beTarget; +} // end namespace llvm extern "C" void LLVMInitializeAArch64TargetInfo() { - RegisterTarget<Triple::aarch64, /*HasJIT=*/true> - X(TheAArch64Target, "aarch64", "AArch64 (ARM 64-bit target)"); + RegisterTarget<Triple::arm64, /*HasJIT=*/true> X(TheARM64leTarget, "arm64", + "AArch64 (little endian)"); + RegisterTarget<Triple::arm64_be, /*HasJIT=*/true> Y(TheARM64beTarget, "arm64_be", + "AArch64 (big endian)"); + + RegisterTarget<Triple::aarch64, /*HasJIT=*/true> Z( + TheAArch64leTarget, "aarch64", "AArch64 (little endian)"); + RegisterTarget<Triple::aarch64_be, /*HasJIT=*/true> W( + TheAArch64beTarget, "aarch64_be", "AArch64 (big endian)"); } |
