SparcMCTargetDesc.h revision 262613
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 17262613Sdim#include "llvm/Support/DataTypes.h" 18262613Sdim 19224133Sdimnamespace llvm { 20262613Sdimclass MCAsmBackend; 21262613Sdimclass MCCodeEmitter; 22262613Sdimclass MCContext; 23262613Sdimclass MCInstrInfo; 24262613Sdimclass MCObjectWriter; 25262613Sdimclass MCRegisterInfo; 26262613Sdimclass MCSubtargetInfo; 27224133Sdimclass Target; 28262613Sdimclass StringRef; 29262613Sdimclass raw_ostream; 30224133Sdim 31224133Sdimextern Target TheSparcTarget; 32224133Sdimextern Target TheSparcV9Target; 33224133Sdim 34262613SdimMCCodeEmitter *createSparcMCCodeEmitter(const MCInstrInfo &MCII, 35262613Sdim const MCRegisterInfo &MRI, 36262613Sdim const MCSubtargetInfo &STI, 37262613Sdim MCContext &Ctx); 38262613SdimMCAsmBackend *createSparcAsmBackend(const Target &T, 39262613Sdim const MCRegisterInfo &MRI, 40262613Sdim StringRef TT, 41262613Sdim StringRef CPU); 42262613SdimMCObjectWriter *createSparcELFObjectWriter(raw_ostream &OS, 43262613Sdim bool Is64Bit, 44262613Sdim 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