mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-24 05:23:45 +02:00
43a54f6830
assembler such as shifts greater than 32. In the case of direct object, the code gen needs to do this lowering since the assembler is not involved. With the advent of the llvm-mc assembler, it also needs to do the same lowering. This patch makes that specific lowering code accessible to both the direct object output and the assembler. This patch does not affect generated output. llvm-svn: 163287
29 lines
838 B
C++
29 lines
838 B
C++
//===-- MipsDirectObjLower.h - Mips LLVM direct object lowering *- C++ -*--===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef MIPSDIRECTOBJLOWER_H
|
|
#define MIPSDIRECTOBJLOWER_H
|
|
#include "llvm/ADT/SmallVector.h"
|
|
#include "llvm/Support/Compiler.h"
|
|
|
|
namespace llvm {
|
|
class MCInst;
|
|
class MCStreamer;
|
|
|
|
namespace Mips {
|
|
/// MipsDirectObjLower - This name space is used to lower MCInstr in cases
|
|
// where the assembler usually finishes the lowering
|
|
// such as large shifts.
|
|
void LowerLargeShift(MCInst &Inst);
|
|
void LowerDextDins(MCInst &Inst);
|
|
}
|
|
}
|
|
|
|
#endif
|