Add MCAsmParser interface.
 - This provides the AsmParser interface to the target specific assembly
   parsers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76453 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvm-mc/AsmParser.h b/tools/llvm-mc/AsmParser.h
index 62aa4ef..b996758 100644
--- a/tools/llvm-mc/AsmParser.h
+++ b/tools/llvm-mc/AsmParser.h
@@ -15,6 +15,7 @@
 #define ASMPARSER_H
 
 #include "AsmLexer.h"
+#include "llvm/MC/MCAsmParser.h"
 #include "llvm/MC/MCStreamer.h"
 
 namespace llvm {
@@ -24,7 +25,7 @@
 class MCStreamer;
 class MCValue;
 
-class AsmParser {
+class AsmParser : MCAsmParser {
 public:
   struct X86Operand;
 
@@ -32,14 +33,19 @@
   AsmLexer Lexer;
   MCContext &Ctx;
   MCStreamer &Out;
+  TargetAsmParser &TargetParser;
   
 public:
-  AsmParser(SourceMgr &SM, MCContext &ctx, MCStreamer &OutStr)
-    : Lexer(SM), Ctx(ctx), Out(OutStr) {}
+  AsmParser(SourceMgr &_SM, MCContext &_Ctx, MCStreamer &_Out, 
+            TargetAsmParser &_TargetParser)
+    : Lexer(_SM), Ctx(_Ctx), Out(_Out), TargetParser(_TargetParser) {}
   ~AsmParser() {}
   
   bool Run();
   
+public:
+  TargetAsmParser &getTargetParser() const { return TargetParser; }
+
 private:
   bool ParseStatement();