summaryrefslogtreecommitdiff
path: root/utils/TableGen/InstrInfoEmitter.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-08-03 21:57:51 +0000
committerChris Lattner <sabre@nondot.org>2003-08-03 21:57:51 +0000
commita3ae6143c1ec9c39a7beb07960f89edd4736b018 (patch)
tree28bf202bd7bac14f342bcb455e5bcc30cbb446aa /utils/TableGen/InstrInfoEmitter.h
parent8d44ba8c5c2d66425caecb679727fe109d7e578d (diff)
downloadllvm-a3ae6143c1ec9c39a7beb07960f89edd4736b018.tar.gz
llvm-a3ae6143c1ec9c39a7beb07960f89edd4736b018.tar.bz2
llvm-a3ae6143c1ec9c39a7beb07960f89edd4736b018.tar.xz
Finish the instruction info emitter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7543 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/InstrInfoEmitter.h')
-rw-r--r--utils/TableGen/InstrInfoEmitter.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/utils/TableGen/InstrInfoEmitter.h b/utils/TableGen/InstrInfoEmitter.h
index bf7e6758a5..0415f043ce 100644
--- a/utils/TableGen/InstrInfoEmitter.h
+++ b/utils/TableGen/InstrInfoEmitter.h
@@ -10,6 +10,9 @@
#include <iosfwd>
class RecordKeeper;
+class Record;
+class StringInit;
+class IntInit;
class InstrInfoEmitter {
RecordKeeper &Records;
@@ -17,10 +20,14 @@ public:
InstrInfoEmitter(RecordKeeper &R) : Records(R) {}
// run - Output the instruction set description, returning true on failure.
- void run(std::ostream &o);
+ void run(std::ostream &OS);
// runEnums - Print out enum values for all of the instructions.
- void runEnums(std::ostream &o);
+ void runEnums(std::ostream &OS);
+private:
+ void emitRecord(Record *R, unsigned Num, Record *InstrInfo, std::ostream &OS);
+ void emitShiftedValue(Record *R, StringInit *Val, IntInit *Shift,
+ std::ostream &OS);
};
#endif