/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/lib/Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp
Line | Count | Source |
1 | | //===-- PowerPCTargetInfo.cpp - PowerPC 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 "PPC.h" |
11 | | #include "llvm/IR/Module.h" |
12 | | #include "llvm/Support/TargetRegistry.h" |
13 | | using namespace llvm; |
14 | | |
15 | 462k | Target &llvm::getThePPC32Target() { |
16 | 462k | static Target ThePPC32Target; |
17 | 462k | return ThePPC32Target; |
18 | 462k | } |
19 | 462k | Target &llvm::getThePPC64Target() { |
20 | 462k | static Target ThePPC64Target; |
21 | 462k | return ThePPC64Target; |
22 | 462k | } |
23 | 462k | Target &llvm::getThePPC64LETarget() { |
24 | 462k | static Target ThePPC64LETarget; |
25 | 462k | return ThePPC64LETarget; |
26 | 462k | } |
27 | | |
28 | 132k | extern "C" void LLVMInitializePowerPCTargetInfo() { |
29 | 132k | RegisterTarget<Triple::ppc, /*HasJIT=*/true> X(getThePPC32Target(), "ppc32", |
30 | 132k | "PowerPC 32"); |
31 | 132k | |
32 | 132k | RegisterTarget<Triple::ppc64, /*HasJIT=*/true> Y(getThePPC64Target(), "ppc64", |
33 | 132k | "PowerPC 64"); |
34 | 132k | |
35 | 132k | RegisterTarget<Triple::ppc64le, /*HasJIT=*/true> Z( |
36 | 132k | getThePPC64LETarget(), "ppc64le", "PowerPC 64 LE"); |
37 | 132k | } |