Don't keep the log files around. Just pipe to a log file instead.
[oota-llvm.git] / utils / TableGen / IntrinsicEmitter.h
index 357369263b970b9bda7c4dc7f5c49dd4664f239c..b1efecb92eea386614a26fe998ebf7d10a7f01e1 100644 (file)
 namespace llvm {
   class IntrinsicEmitter : public TableGenBackend {
     RecordKeeper &Records;
+    bool TargetOnly;
+    std::string TargetPrefix;
     
   public:
-    IntrinsicEmitter(RecordKeeper &R) : Records(R) {}
+    IntrinsicEmitter(RecordKeeper &R, bool T = false) 
+      : Records(R), TargetOnly(T) {}
 
-    void run(std::ostream &OS);
+    void run(raw_ostream &OS);
+
+    void EmitPrefix(raw_ostream &OS);
     
     void EmitEnumInfo(const std::vector<CodeGenIntrinsic> &Ints, 
-                      std::ostream &OS);
+                      raw_ostream &OS);
 
     void EmitFnNameRecognizer(const std::vector<CodeGenIntrinsic> &Ints, 
-                              std::ostream &OS);
+                              raw_ostream &OS);
     void EmitIntrinsicToNameTable(const std::vector<CodeGenIntrinsic> &Ints, 
-                                  std::ostream &OS);
+                                  raw_ostream &OS);
+    void EmitIntrinsicToOverloadTable(const std::vector<CodeGenIntrinsic> &Ints, 
+                                      raw_ostream &OS);
     void EmitVerifier(const std::vector<CodeGenIntrinsic> &Ints, 
-                      std::ostream &OS);
+                      raw_ostream &OS);
     void EmitGenerator(const std::vector<CodeGenIntrinsic> &Ints, 
-                       std::ostream &OS);
+                       raw_ostream &OS);
     void EmitAttributes(const std::vector<CodeGenIntrinsic> &Ints,
-                        std::ostream &OS);
+                        raw_ostream &OS);
+    void EmitModRefBehavior(const std::vector<CodeGenIntrinsic> &Ints,
+                            raw_ostream &OS);
     void EmitGCCBuiltinList(const std::vector<CodeGenIntrinsic> &Ints, 
-                            std::ostream &OS);
+                            raw_ostream &OS);
     void EmitIntrinsicToGCCBuiltinMap(const std::vector<CodeGenIntrinsic> &Ints, 
-                                      std::ostream &OS);
+                                      raw_ostream &OS);
+    void EmitSuffix(raw_ostream &OS);
   };
 
 } // End llvm namespace