1224133Sdim//===-- SparcMCTargetDesc.h - Sparc Target Descriptions ---------*- C++ -*-===// 2224133Sdim// 3224133Sdim// The LLVM Compiler Infrastructure 4224133Sdim// 5224133Sdim// This file is distributed under the University of Illinois Open Source 6224133Sdim// License. See LICENSE.TXT for details. 7224133Sdim// 8224133Sdim//===----------------------------------------------------------------------===// 9224133Sdim// 10224133Sdim// This file provides Sparc specific target descriptions. 11224133Sdim// 12224133Sdim//===----------------------------------------------------------------------===// 13224133Sdim 14224133Sdim#ifndef SPARCMCTARGETDESC_H 15224133Sdim#define SPARCMCTARGETDESC_H 16224133Sdim 17263764Sdim#include "llvm/Support/DataTypes.h" 18263764Sdim 19224133Sdimnamespace llvm { 20263764Sdimclass MCAsmBackend; 21263764Sdimclass MCCodeEmitter; 22263764Sdimclass MCContext; 23263764Sdimclass MCInstrInfo; 24263764Sdimclass MCObjectWriter; 25263764Sdimclass MCRegisterInfo; 26263764Sdimclass MCSubtargetInfo; 27224133Sdimclass Target; 28263764Sdimclass StringRef; 29263764Sdimclass raw_ostream; 30224133Sdim 31224133Sdimextern Target TheSparcTarget; 32224133Sdimextern Target TheSparcV9Target; 33224133Sdim 34263764SdimMCCodeEmitter *createSparcMCCodeEmitter(const MCInstrInfo &MCII, 35263764Sdim const MCRegisterInfo &MRI, 36263764Sdim const MCSubtargetInfo &STI, 37263764Sdim MCContext &Ctx); 38263764SdimMCAsmBackend *createSparcAsmBackend(const Target &T, 39263764Sdim const MCRegisterInfo &MRI, 40263764Sdim StringRef TT, 41263764Sdim StringRef CPU); 42263764SdimMCObjectWriter *createSparcELFObjectWriter(raw_ostream &OS, 43263764Sdim bool Is64Bit, 44263764Sdim uint8_t OSABI); 45224133Sdim} // End llvm namespace 46224133Sdim 47224133Sdim// Defines symbolic names for Sparc registers. This defines a mapping from 48224133Sdim// register name to register number. 49224133Sdim// 50224133Sdim#define GET_REGINFO_ENUM 51224133Sdim#include "SparcGenRegisterInfo.inc" 52224133Sdim 53224133Sdim// Defines symbolic names for the Sparc instructions. 54224133Sdim// 55224133Sdim#define GET_INSTRINFO_ENUM 56224133Sdim#include "SparcGenInstrInfo.inc" 57224133Sdim 58224133Sdim#define GET_SUBTARGETINFO_ENUM 59224133Sdim#include "SparcGenSubtargetInfo.inc" 60224133Sdim 61224133Sdim#endif 62