summaryrefslogtreecommitdiffstats
path: root/llvm/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
commit8393c15b28cdac4d481ba0a58667d9ed78fd90ed (patch)
treed23f60bddbf94a7a51d07669f7c77e9d34960c92 /llvm/utils/TableGen/CodeEmitterGen.h
parent243ded5e1aef894746e50f5dddfe843a31ef2396 (diff)
downloadbcm5719-llvm-8393c15b28cdac4d481ba0a58667d9ed78fd90ed.tar.gz
bcm5719-llvm-8393c15b28cdac4d481ba0a58667d9ed78fd90ed.zip
* 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 llvm-svn: 16975
Diffstat (limited to 'llvm/utils/TableGen/CodeEmitterGen.h')
-rw-r--r--llvm/utils/TableGen/CodeEmitterGen.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/CodeEmitterGen.h b/llvm/utils/TableGen/CodeEmitterGen.h
index 19ca5452f55..5bb220dd4a6 100644
--- a/llvm/utils/TableGen/CodeEmitterGen.h
+++ b/llvm/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
OpenPOWER on IntegriCloud