[MCTargetAsmParser] Move the member varialbes that reference
[oota-llvm.git] / include / llvm / MC / MCTargetAsmParser.h
index bb33dc5ed3efd6ec3a880962d4b5eacfbd80e097..2c00c8732b7a9eec6335e4a41daf322d17ee519a 100644 (file)
@@ -20,6 +20,7 @@ class AsmToken;
 class MCInst;
 class MCParsedAsmOperand;
 class MCStreamer;
+class MCSubtargetInfo;
 class SMLoc;
 class StringRef;
 template <typename T> class SmallVectorImpl;
@@ -92,7 +93,7 @@ private:
   MCTargetAsmParser(const MCTargetAsmParser &) = delete;
   void operator=(const MCTargetAsmParser &) = delete;
 protected: // Can only create subclasses.
-  MCTargetAsmParser(MCTargetOptions const &);
+  MCTargetAsmParser(MCTargetOptions const &, MCSubtargetInfo &STI);
 
   /// AvailableFeatures - The current set of available features.
   uint64_t AvailableFeatures;
@@ -107,9 +108,14 @@ protected: // Can only create subclasses.
   /// Set of options which affects instrumentation of inline assembly.
   MCTargetOptions MCOptions;
 
+  /// Current STI.
+  MCSubtargetInfo &STI;
+
 public:
   ~MCTargetAsmParser() override;
 
+  const MCSubtargetInfo &getSTI() const;
+
   uint64_t getAvailableFeatures() const { return AvailableFeatures; }
   void setAvailableFeatures(uint64_t Value) { AvailableFeatures = Value; }