Rename createEmitter to run because eventually all tablegen backends will
[oota-llvm.git] / utils / TableGen / CodeEmitterGen.h
1 //===- CodeEmitterGen.h - Code Emitter Generator ----------------*- C++ -*-===//
2 //
3 // FIXME: document
4 //
5 //===----------------------------------------------------------------------===//
6
7 #ifndef CODEMITTERGEN_H
8 #define CODEMITTERGEN_H
9
10 #include "Record.h"
11
12 class CodeEmitterGen {
13   RecordKeeper &Records;
14 public:
15   CodeEmitterGen(RecordKeeper &R) : Records(R) {}
16   
17   // run - Output the code emitter, returning true on failure.
18   bool run(std::ostream &o);
19 private:
20   void emitMachineOpEmitter(std::ostream &o, const std::string &Namespace);
21   void emitGetValueBit(std::ostream &o, const std::string &Namespace);
22 };
23
24 #endif