Emit itinerary class in instruction info.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24122 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/InstrInfoEmitter.h b/utils/TableGen/InstrInfoEmitter.h
index 93f0e60..2389f3a 100644
--- a/utils/TableGen/InstrInfoEmitter.h
+++ b/utils/TableGen/InstrInfoEmitter.h
@@ -28,8 +28,11 @@
 
 class InstrInfoEmitter : public TableGenBackend {
   RecordKeeper &Records;
+  bool IsItineraries;
+  std::map<std::string, unsigned> ItinClassMap;
+  
 public:
-  InstrInfoEmitter(RecordKeeper &R) : Records(R) {}
+  InstrInfoEmitter(RecordKeeper &R) : Records(R), IsItineraries(false) {}
 
   // run - Output the instruction set description, returning true on failure.
   void run(std::ostream &OS);
@@ -44,6 +47,8 @@
                   std::map<std::vector<Record*>, unsigned> &EL,
                   std::map<std::vector<Record*>, unsigned> &OpInfo,
                   std::ostream &OS);
+  void GatherItinClasses();
+  unsigned ItinClassNumber(std::string ItinName);
   void emitShiftedValue(Record *R, StringInit *Val, IntInit *Shift,
                         std::ostream &OS);
 };