blob: 5727dbc4170d9660bacf8f535050b9ff258cf21e [file] [log] [blame]
Daniel Dunbar56e29472009-07-15 06:35:19 +00001//===-- 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
Daniel Dunbar67038c12009-07-18 23:03:22 +000010#include "PPC.h"
Chandler Carruth9fb823b2013-01-02 11:36:10 +000011#include "llvm/IR/Module.h"
Evan Cheng2bb40352011-08-24 18:08:43 +000012#include "llvm/Support/TargetRegistry.h"
Daniel Dunbar56e29472009-07-15 06:35:19 +000013using namespace llvm;
14
Bill Schmidt0a9170d2013-07-26 01:35:43 +000015Target llvm::ThePPC32Target, llvm::ThePPC64Target, llvm::ThePPC64LETarget;
Daniel Dunbar56e29472009-07-15 06:35:19 +000016
Daniel Dunbar56e29472009-07-15 06:35:19 +000017extern "C" void LLVMInitializePowerPCTargetInfo() {
Daniel Dunbaree01b242009-07-26 05:03:33 +000018 RegisterTarget<Triple::ppc, /*HasJIT=*/true>
19 X(ThePPC32Target, "ppc32", "PowerPC 32");
Daniel Dunbar56e29472009-07-15 06:35:19 +000020
Daniel Dunbaree01b242009-07-26 05:03:33 +000021 RegisterTarget<Triple::ppc64, /*HasJIT=*/true>
22 Y(ThePPC64Target, "ppc64", "PowerPC 64");
Bill Schmidt0a9170d2013-07-26 01:35:43 +000023
24 RegisterTarget<Triple::ppc64le, /*HasJIT=*/true>
25 Z(ThePPC64LETarget, "ppc64le", "PowerPC 64 LE");
Daniel Dunbar56e29472009-07-15 06:35:19 +000026}