mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-30 05:29:47 +00:00
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163287 91177308-0d34-0410-b5e6-96231b3b80d8
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
|