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 17263763Sdim#include "llvm/Support/DataTypes.h" 18263763Sdim 19224133Sdimnamespace llvm { 20263763Sdimclass MCAsmBackend; 21263763Sdimclass MCCodeEmitter; 22263763Sdimclass MCContext; 23263763Sdimclass MCInstrInfo; 24263763Sdimclass MCObjectWriter; 25263763Sdimclass MCRegisterInfo; 26263763Sdimclass MCSubtargetInfo; 27224133Sdimclass Target; 28263763Sdimclass StringRef; 29263763Sdimclass raw_ostream; 30224133Sdim 31224133Sdimextern Target TheSparcTarget; 32224133Sdimextern Target TheSparcV9Target; 33224133Sdim 34263763SdimMCCodeEmitter *createSparcMCCodeEmitter(const MCInstrInfo &MCII, 35263763Sdim const MCRegisterInfo &MRI, 36263763Sdim const MCSubtargetInfo &STI, 37263763Sdim MCContext &Ctx); 38263763SdimMCAsmBackend *createSparcAsmBackend(const Target &T, 39263763Sdim const MCRegisterInfo &MRI, 40263763Sdim StringRef TT, 41263763Sdim StringRef CPU); 42263763SdimMCObjectWriter *createSparcELFObjectWriter(raw_ostream &OS, 43263763Sdim bool Is64Bit, 44263763Sdim 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