67 lines
1.9 KiB
C++
67 lines
1.9 KiB
C++
|
//===-- MipsAsmParser.cpp - Parse Mips assembly to MCInst instructions ----===//
|
||
|
//
|
||
|
// The LLVM Compiler Infrastructure
|
||
|
//
|
||
|
// This file is distributed under the University of Illinois Open Source
|
||
|
// License. See LICENSE.TXT for details.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
|
||
|
#include "MCTargetDesc/MipsMCTargetDesc.h"
|
||
|
#include "llvm/MC/MCParser/MCAsmLexer.h"
|
||
|
#include "llvm/MC/MCTargetAsmParser.h"
|
||
|
#include "llvm/Support/TargetRegistry.h"
|
||
|
|
||
|
using namespace llvm;
|
||
|
|
||
|
namespace {
|
||
|
class MipsAsmParser : public MCTargetAsmParser {
|
||
|
bool MatchAndEmitInstruction(SMLoc IDLoc,
|
||
|
SmallVectorImpl<MCParsedAsmOperand*> &Operands,
|
||
|
MCStreamer &Out);
|
||
|
|
||
|
bool ParseRegister(unsigned &RegNo, SMLoc &StartLoc, SMLoc &EndLoc);
|
||
|
|
||
|
bool ParseInstruction(StringRef Name, SMLoc NameLoc,
|
||
|
SmallVectorImpl<MCParsedAsmOperand*> &Operands);
|
||
|
|
||
|
bool ParseDirective(AsmToken DirectiveID);
|
||
|
|
||
|
public:
|
||
|
MipsAsmParser(MCSubtargetInfo &sti, MCAsmParser &parser)
|
||
|
: MCTargetAsmParser() {
|
||
|
}
|
||
|
|
||
|
};
|
||
|
}
|
||
|
|
||
|
bool MipsAsmParser::
|
||
|
MatchAndEmitInstruction(SMLoc IDLoc,
|
||
|
SmallVectorImpl<MCParsedAsmOperand*> &Operands,
|
||
|
MCStreamer &Out) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
bool MipsAsmParser::
|
||
|
ParseRegister(unsigned &RegNo, SMLoc &StartLoc, SMLoc &EndLoc) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
bool MipsAsmParser::
|
||
|
ParseInstruction(StringRef Name, SMLoc NameLoc,
|
||
|
SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
bool MipsAsmParser::
|
||
|
ParseDirective(AsmToken DirectiveID) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
extern "C" void LLVMInitializeMipsAsmParser() {
|
||
|
RegisterMCAsmParser<MipsAsmParser> X(TheMipsTarget);
|
||
|
RegisterMCAsmParser<MipsAsmParser> Y(TheMipselTarget);
|
||
|
RegisterMCAsmParser<MipsAsmParser> A(TheMips64Target);
|
||
|
RegisterMCAsmParser<MipsAsmParser> B(TheMips64elTarget);
|
||
|
}
|