diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp')
| -rw-r--r-- | contrib/llvm-project/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp | 40 | 
1 files changed, 40 insertions, 0 deletions
diff --git a/contrib/llvm-project/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp b/contrib/llvm-project/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp new file mode 100644 index 000000000000..a7f7d75e356e --- /dev/null +++ b/contrib/llvm-project/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp @@ -0,0 +1,40 @@ +//===-- ARMTargetInfo.cpp - ARM Target Implementation ---------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#include "TargetInfo/ARMTargetInfo.h" +#include "llvm/Support/TargetRegistry.h" +using namespace llvm; + +Target &llvm::getTheARMLETarget() { +  static Target TheARMLETarget; +  return TheARMLETarget; +} +Target &llvm::getTheARMBETarget() { +  static Target TheARMBETarget; +  return TheARMBETarget; +} +Target &llvm::getTheThumbLETarget() { +  static Target TheThumbLETarget; +  return TheThumbLETarget; +} +Target &llvm::getTheThumbBETarget() { +  static Target TheThumbBETarget; +  return TheThumbBETarget; +} + +extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeARMTargetInfo() { +  RegisterTarget<Triple::arm, /*HasJIT=*/true> X(getTheARMLETarget(), "arm", +                                                 "ARM", "ARM"); +  RegisterTarget<Triple::armeb, /*HasJIT=*/true> Y(getTheARMBETarget(), "armeb", +                                                   "ARM (big endian)", "ARM"); + +  RegisterTarget<Triple::thumb, /*HasJIT=*/true> A(getTheThumbLETarget(), +                                                   "thumb", "Thumb", "ARM"); +  RegisterTarget<Triple::thumbeb, /*HasJIT=*/true> B( +      getTheThumbBETarget(), "thumbeb", "Thumb (big endian)", "ARM"); +}  | 
