reimplement the regex matching strategy by building a single
[oota-llvm.git] / utils / TableGen / CodeGenTarget.h
index c44c6f0455db655b32047e3172a6a5fd528247c5..e763795ce0be92d4d45ad84e2ec58e8dc233ca22 100644 (file)
 #ifndef CODEGEN_TARGET_H
 #define CODEGEN_TARGET_H
 
+#include "llvm/Support/raw_ostream.h"
 #include "CodeGenRegisters.h"
 #include "CodeGenInstruction.h"
 #include <algorithm>
-#include <iosfwd>
 #include <map>
 
 namespace llvm {
@@ -43,9 +43,7 @@ enum SDNP {
   SDNPMayLoad,
   SDNPMayStore,
   SDNPSideEffect,
-  SDNPMemOperand,
-  SDNPInI1,
-  SDNPOutI1
+  SDNPMemOperand
 };
 
 // ComplexPattern attributes.
@@ -89,6 +87,10 @@ public:
   ///
   Record *getInstructionSet() const;
 
+  /// getAsmParser - Return the AssemblyParser definition for this target.
+  ///
+  Record *getAsmParser() const;
+
   /// getAsmWriter - Return the AssemblyWriter definition for this target.
   ///
   Record *getAsmWriter() const;
@@ -211,12 +213,10 @@ public:
   void getInstructionsByEnumValue(std::vector<const CodeGenInstruction*>
                                                 &NumberedInstructions);
 
+
   /// isLittleEndianEncoding - are instruction bit patterns defined as  [0..n]?
   ///
   bool isLittleEndianEncoding() const;
-
-  /// supportsHasI1 - does this target understand HasI1 for ADDE and ADDC?
-  bool supportsHasI1() const;
 };
 
 /// ComplexPattern - ComplexPattern info, corresponding to the ComplexPattern