mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
MC/AsmParser: Lift Run() and TargetParser to base class.
Also, add constructor function for creating AsmParser instances. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108604 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -69,7 +69,7 @@ AsmParser::AsmParser(const Target &T, SourceMgr &_SM, MCContext &_Ctx,
|
||||
MCStreamer &_Out, const MCAsmInfo &_MAI)
|
||||
: Lexer(_MAI), Ctx(_Ctx), Out(_Out), SrcMgr(_SM),
|
||||
GenericParser(new GenericAsmParser), PlatformParser(0),
|
||||
TargetParser(0), CurBuffer(0) {
|
||||
CurBuffer(0) {
|
||||
Lexer.setBuffer(SrcMgr.getMemoryBuffer(CurBuffer));
|
||||
|
||||
// Initialize the generic parser.
|
||||
@@ -93,12 +93,6 @@ AsmParser::~AsmParser() {
|
||||
delete GenericParser;
|
||||
}
|
||||
|
||||
void AsmParser::setTargetParser(TargetAsmParser &P) {
|
||||
assert(!TargetParser && "Target parser is already initialized!");
|
||||
TargetParser = &P;
|
||||
TargetParser->Initialize(*this);
|
||||
}
|
||||
|
||||
void AsmParser::Warning(SMLoc L, const Twine &Msg) {
|
||||
PrintMessage(L, Msg.str(), "warning");
|
||||
}
|
||||
@@ -1487,3 +1481,10 @@ bool GenericAsmParser::ParseDirectiveLoc(StringRef, SMLoc DirectiveLoc) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/// \brief Create an MCAsmParser instance.
|
||||
MCAsmParser *llvm::createMCAsmParser(const Target &T, SourceMgr &SM,
|
||||
MCContext &C, MCStreamer &Out,
|
||||
const MCAsmInfo &MAI) {
|
||||
return new AsmParser(T, SM, C, Out, MAI);
|
||||
}
|
||||
|
Reference in New Issue
Block a user