1//===-- PPCMCTargetDesc.h - PowerPC Target Descriptions ---------*- C++ -*-===// 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// This file provides PowerPC specific target descriptions. 11// 12//===----------------------------------------------------------------------===// 13 14#ifndef PPCMCTARGETDESC_H 15#define PPCMCTARGETDESC_H 16 17namespace llvm { 18class MCAsmBackend; 19class MCCodeEmitter; 20class MCContext; 21class MCInstrInfo; 22class MCSubtargetInfo; 23class Target; 24class StringRef; 25 26extern Target ThePPC32Target; 27extern Target ThePPC64Target; 28 29MCCodeEmitter *createPPCMCCodeEmitter(const MCInstrInfo &MCII, 30 const MCSubtargetInfo &STI, 31 MCContext &Ctx); 32 33MCAsmBackend *createPPCAsmBackend(const Target &T, StringRef TT); 34 35} // End llvm namespace 36 37// Defines symbolic names for PowerPC registers. This defines a mapping from 38// register name to register number. 39// 40#define GET_REGINFO_ENUM 41#include "PPCGenRegisterInfo.inc" 42 43// Defines symbolic names for the PowerPC instructions. 44// 45#define GET_INSTRINFO_ENUM 46#include "PPCGenInstrInfo.inc" 47 48#define GET_SUBTARGETINFO_ENUM 49#include "PPCGenSubtargetInfo.inc" 50 51#endif 52