summaryrefslogtreecommitdiff
path: root/utils/TableGen/CodeEmitterGen.h
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2003-05-24 00:15:53 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2003-05-24 00:15:53 +0000
commit9fff7e194a2d8aa3abe92efa506b1fbe83583f53 (patch)
tree7f3dccb981941c8dc60e57adf75105d25807aa99 /utils/TableGen/CodeEmitterGen.h
parente9d883828ad92f3a1d06e3c9e98c4e3df937197d (diff)
downloadllvm-9fff7e194a2d8aa3abe92efa506b1fbe83583f53.tar.gz
llvm-9fff7e194a2d8aa3abe92efa506b1fbe83583f53.tar.bz2
llvm-9fff7e194a2d8aa3abe92efa506b1fbe83583f53.tar.xz
First cut at the Code Generator using the TableGen methodology.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6321 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/CodeEmitterGen.h')
-rw-r--r--utils/TableGen/CodeEmitterGen.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/utils/TableGen/CodeEmitterGen.h b/utils/TableGen/CodeEmitterGen.h
new file mode 100644
index 0000000000..18ebcd4bd4
--- /dev/null
+++ b/utils/TableGen/CodeEmitterGen.h
@@ -0,0 +1,23 @@
+//===- CodeEmitterGen.h - Code Emitter Generator ----------------*- C++ -*-===//
+//
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef CODEMITTERGEN_H
+#define CODEMITTERGEN_H
+
+#include "Record.h"
+#include <ostream>
+
+struct CodeEmitterGen {
+ RecordKeeper &Records;
+
+public:
+ CodeEmitterGen(RecordKeeper &R) : Records(R) {}
+
+ void createEmitter(std::ostream &o);
+ void emitMachineOpEmitter(std::ostream &o, const std::string &Namespace);
+ void emitGetValueBit(std::ostream &o, const std::string &Namespace);
+};
+
+#endif