/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp
Line | Count | Source |
1 | | //===-- SparcTargetInfo.cpp - Sparc Target Implementation -----------------===// |
2 | | // |
3 | | // The LLVM Compiler Infrastructure |
4 | | // |
5 | | // This file is distributed under the University of Illinois Open Source |
6 | | // License. See LICENSE.TXT for details. |
7 | | // |
8 | | //===----------------------------------------------------------------------===// |
9 | | |
10 | | #include "Sparc.h" |
11 | | #include "llvm/IR/Module.h" |
12 | | #include "llvm/Support/TargetRegistry.h" |
13 | | using namespace llvm; |
14 | | |
15 | 533k | Target &llvm::getTheSparcTarget() { |
16 | 533k | static Target TheSparcTarget; |
17 | 533k | return TheSparcTarget; |
18 | 533k | } |
19 | 533k | Target &llvm::getTheSparcV9Target() { |
20 | 533k | static Target TheSparcV9Target; |
21 | 533k | return TheSparcV9Target; |
22 | 533k | } |
23 | 533k | Target &llvm::getTheSparcelTarget() { |
24 | 533k | static Target TheSparcelTarget; |
25 | 533k | return TheSparcelTarget; |
26 | 533k | } |
27 | | |
28 | 132k | extern "C" void LLVMInitializeSparcTargetInfo() { |
29 | 132k | RegisterTarget<Triple::sparc, /*HasJIT=*/true> X(getTheSparcTarget(), "sparc", |
30 | 132k | "Sparc"); |
31 | 132k | RegisterTarget<Triple::sparcv9, /*HasJIT=*/true> Y(getTheSparcV9Target(), |
32 | 132k | "sparcv9", "Sparc V9"); |
33 | 132k | RegisterTarget<Triple::sparcel, /*HasJIT=*/true> Z(getTheSparcelTarget(), |
34 | 132k | "sparcel", "Sparc LE"); |
35 | 132k | } |