mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-21 16:31:16 +00:00
41400da31e
2. Parsing .word directive in MBlaze asm parser 3. Fixing hack where memory instructions reversed order of last two parameters 4. Fixing many improperly encoded instructions 5. Support parsing special instructions (MFS,MTS,etc.) 6. Removing unused functions from inst printer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118941 91177308-0d34-0410-b5e6-96231b3b80d8
44 lines
1.4 KiB
C++
44 lines
1.4 KiB
C++
//===-- MBLazeInstPrinter.h - Convert MBlaze MCInst to assembly syntax ----===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This class prints a MBlaze MCInst to a .s file.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef MBLAZEINSTPRINTER_H
|
|
#define MBLAZEINSTPRINTER_H
|
|
|
|
#include "llvm/MC/MCInstPrinter.h"
|
|
|
|
namespace llvm {
|
|
class MCOperand;
|
|
|
|
class MBlazeInstPrinter : public MCInstPrinter {
|
|
public:
|
|
MBlazeInstPrinter(const MCAsmInfo &MAI) : MCInstPrinter(MAI) {
|
|
}
|
|
|
|
virtual void printInst(const MCInst *MI, raw_ostream &O);
|
|
|
|
// Autogenerated by tblgen.
|
|
void printInstruction(const MCInst *MI, raw_ostream &O);
|
|
static const char *getRegisterName(unsigned RegNo);
|
|
static const char *getInstructionName(unsigned Opcode);
|
|
|
|
void printOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O,
|
|
const char *Modifier = 0);
|
|
void printFSLImm(const MCInst *MI, int OpNo, raw_ostream &O);
|
|
void printUnsignedImm(const MCInst *MI, int OpNo, raw_ostream &O);
|
|
void printMemOperand(const MCInst *MI, int OpNo,raw_ostream &O,
|
|
const char *Modifier = 0);
|
|
};
|
|
}
|
|
|
|
#endif
|