blob: 7a0042ad889ead787046b104fea20f4320e10504 [file] [log] [blame]
James Molloy8c545332011-08-30 07:23:29 +00001//===-- MipsMCTargetDesc.h - Mips Target Descriptions -----------*- C++ -*-===//
Evan Chengbc153d42011-07-14 20:59:42 +00002//
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//
James Molloy8c545332011-08-30 07:23:29 +000010// This file provides Mips specific target descriptions.
Evan Chengbc153d42011-07-14 20:59:42 +000011//
12//===----------------------------------------------------------------------===//
13
James Molloy8c545332011-08-30 07:23:29 +000014#ifndef MIPSMCTARGETDESC_H
15#define MIPSMCTARGETDESC_H
Evan Chengbc153d42011-07-14 20:59:42 +000016
17namespace llvm {
Akira Hatanaka44220ca2011-09-30 21:23:45 +000018class MCAsmBackend;
Akira Hatanaka750ecec2011-09-30 20:40:03 +000019class MCInstrInfo;
20class MCCodeEmitter;
21class MCContext;
Evan Chengbc153d42011-07-14 20:59:42 +000022class MCSubtargetInfo;
Evan Chengbc153d42011-07-14 20:59:42 +000023class StringRef;
Akira Hatanaka750ecec2011-09-30 20:40:03 +000024class Target;
Evan Chengbc153d42011-07-14 20:59:42 +000025
26extern Target TheMipsTarget;
27extern Target TheMipselTarget;
Akira Hatanaka3d673cc2011-09-21 03:00:58 +000028extern Target TheMips64Target;
29extern Target TheMips64elTarget;
Evan Chengbc153d42011-07-14 20:59:42 +000030
Akira Hatanaka750ecec2011-09-30 20:40:03 +000031MCCodeEmitter *createMipsMCCodeEmitter(const MCInstrInfo &MCII,
32 const MCSubtargetInfo &STI,
33 MCContext &Ctx);
Akira Hatanaka44220ca2011-09-30 21:23:45 +000034
35MCAsmBackend *createMipsAsmBackend(const Target &T, StringRef TT);
Evan Chengbc153d42011-07-14 20:59:42 +000036} // 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