1a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//===-- MipsDirectObjLower.h - Mips LLVM direct object lowering *- C++ -*--===//
2a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//
3a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//                     The LLVM Compiler Infrastructure
4a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//
5a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter// This file is distributed under the University of Illinois Open Source
6a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter// License. See LICENSE.TXT for details.
7a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//
8a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter//===----------------------------------------------------------------------===//
9a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter
10a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter#ifndef MIPSDIRECTOBJLOWER_H
11a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter#define MIPSDIRECTOBJLOWER_H
12a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter#include "llvm/ADT/SmallVector.h"
13a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter#include "llvm/Support/Compiler.h"
14a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter
15a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carternamespace llvm {
16a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  class MCInst;
17a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  class MCStreamer;
18a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter
19a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  namespace Mips {
20a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  /// MipsDirectObjLower - This name space is used to lower MCInstr in cases
21a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  //                       where the assembler usually finishes the lowering
22a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  //                       such as large shifts.
23a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter    void LowerLargeShift(MCInst &Inst);
24a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter    void LowerDextDins(MCInst &Inst);
25a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter  }
26a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter}
27a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter
28a7570a3d8686a1fe2075b5bee01650490fa52b26Jack Carter#endif
29