aboutsummaryrefslogtreecommitdiff
path: root/utils/TableGen/CodeEmitterGen.h
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-10-14 05:53:01 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-10-14 05:53:01 +0000
commit28eefa5464ca6415fcee577d5c47f739535d7e6c (patch)
tree5d23cf6bfb8b3b2992741d6674024bd726d06bc7 /utils/TableGen/CodeEmitterGen.h
parent35e83cc970e2ed99c8087e0c6b99f8a3618c279b (diff)
* Factor out (into new fn) a loop emitting operand shifts into the instruction
* Reverse instruction bit components for a LittleEndian-style encoding * Fix some comments and spacing git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16975 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/CodeEmitterGen.h')
-rw-r--r--utils/TableGen/CodeEmitterGen.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/utils/TableGen/CodeEmitterGen.h b/utils/TableGen/CodeEmitterGen.h
index 19ca5452f5..5bb220dd4a 100644
--- a/utils/TableGen/CodeEmitterGen.h
+++ b/utils/TableGen/CodeEmitterGen.h
@@ -15,9 +15,13 @@
#define CODEMITTERGEN_H
#include "TableGenBackend.h"
+#include <map>
+#include <vector>
namespace llvm {
+class RecordVal;
+
class CodeEmitterGen : public TableGenBackend {
RecordKeeper &Records;
public:
@@ -28,6 +32,10 @@ public:
private:
void emitMachineOpEmitter(std::ostream &o, const std::string &Namespace);
void emitGetValueBit(std::ostream &o, const std::string &Namespace);
+ void emitInstrOpBits(std::ostream &o,
+ const std::vector<RecordVal> &Vals,
+ std::map<std::string, unsigned> &OpOrder,
+ std::map<std::string, bool> &OpContinuous);
};
} // End llvm namespace