1//===-- MipsMCTargetDesc.h - Mips 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 Mips specific target descriptions.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef MIPSMCTARGETDESC_H
15#define MIPSMCTARGETDESC_H
16
17namespace llvm {
18class MCAsmBackend;
19class MCInstrInfo;
20class MCCodeEmitter;
21class MCContext;
22class MCSubtargetInfo;
23class StringRef;
24class Target;
25
26extern Target TheMipsTarget;
27extern Target TheMipselTarget;
28extern Target TheMips64Target;
29extern Target TheMips64elTarget;
30
31MCCodeEmitter *createMipsMCCodeEmitter(const MCInstrInfo &MCII,
32                                       const MCSubtargetInfo &STI,
33                                       MCContext &Ctx);
34
35MCAsmBackend *createMipsAsmBackend(const Target &T, StringRef TT);
36} // End llvm namespace
37
38// Defines symbolic names for Mips registers.  This defines a mapping from
39// register name to register number.
40#define GET_REGINFO_ENUM
41#include "MipsGenRegisterInfo.inc"
42
43// Defines symbolic names for the Mips instructions.
44#define GET_INSTRINFO_ENUM
45#include "MipsGenInstrInfo.inc"
46
47#define GET_SUBTARGETINFO_ENUM
48#include "MipsGenSubtargetInfo.inc"
49
50#endif
51