]> git.proxmox.com Git - rustc.git/blame - src/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.h
Imported Upstream version 1.0.0+dfsg1
[rustc.git] / src / llvm / lib / Target / Mips / MCTargetDesc / MipsMCTargetDesc.h
CommitLineData
223e47cc
LB
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
1a4d82fc
JJ
14#ifndef LLVM_LIB_TARGET_MIPS_MCTARGETDESC_MIPSMCTARGETDESC_H
15#define LLVM_LIB_TARGET_MIPS_MCTARGETDESC_MIPSMCTARGETDESC_H
223e47cc
LB
16
17#include "llvm/Support/DataTypes.h"
18
19namespace llvm {
20class MCAsmBackend;
21class MCCodeEmitter;
22class MCContext;
23class MCInstrInfo;
24class MCObjectWriter;
25class MCRegisterInfo;
26class MCSubtargetInfo;
27class StringRef;
28class Target;
29class raw_ostream;
30
31extern Target TheMipsTarget;
32extern Target TheMipselTarget;
33extern Target TheMips64Target;
34extern Target TheMips64elTarget;
35
36MCCodeEmitter *createMipsMCCodeEmitterEB(const MCInstrInfo &MCII,
37 const MCRegisterInfo &MRI,
38 const MCSubtargetInfo &STI,
39 MCContext &Ctx);
40MCCodeEmitter *createMipsMCCodeEmitterEL(const MCInstrInfo &MCII,
41 const MCRegisterInfo &MRI,
42 const MCSubtargetInfo &STI,
43 MCContext &Ctx);
44
1a4d82fc
JJ
45MCAsmBackend *createMipsAsmBackendEB32(const Target &T,
46 const MCRegisterInfo &MRI, StringRef TT,
223e47cc 47 StringRef CPU);
1a4d82fc
JJ
48MCAsmBackend *createMipsAsmBackendEL32(const Target &T,
49 const MCRegisterInfo &MRI, StringRef TT,
223e47cc 50 StringRef CPU);
1a4d82fc
JJ
51MCAsmBackend *createMipsAsmBackendEB64(const Target &T,
52 const MCRegisterInfo &MRI, StringRef TT,
223e47cc 53 StringRef CPU);
1a4d82fc
JJ
54MCAsmBackend *createMipsAsmBackendEL64(const Target &T,
55 const MCRegisterInfo &MRI, StringRef TT,
223e47cc
LB
56 StringRef CPU);
57
58MCObjectWriter *createMipsELFObjectWriter(raw_ostream &OS,
59 uint8_t OSABI,
60 bool IsLittleEndian,
61 bool Is64Bit);
62} // End llvm namespace
63
64// Defines symbolic names for Mips registers. This defines a mapping from
65// register name to register number.
66#define GET_REGINFO_ENUM
67#include "MipsGenRegisterInfo.inc"
68
69// Defines symbolic names for the Mips instructions.
70#define GET_INSTRINFO_ENUM
71#include "MipsGenInstrInfo.inc"
72
73#define GET_SUBTARGETINFO_ENUM
74#include "MipsGenSubtargetInfo.inc"
75
76#endif