summaryrefslogtreecommitdiff
path: root/utils/TableGen/InstrInfoEmitter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/TableGen/InstrInfoEmitter.cpp')
-rw-r--r--utils/TableGen/InstrInfoEmitter.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/utils/TableGen/InstrInfoEmitter.cpp b/utils/TableGen/InstrInfoEmitter.cpp
index c794cd0441..7b64f922f6 100644
--- a/utils/TableGen/InstrInfoEmitter.cpp
+++ b/utils/TableGen/InstrInfoEmitter.cpp
@@ -65,6 +65,10 @@ void InstrInfoEmitter::run(std::ostream &OS) {
std::vector<Record*> Instructions =
Records.getAllDerivedDefinitions("Instruction");
+ // Emit empty implicit uses and defs lists
+ OS << "static const unsigned EmptyImpUses[] = { 0 };\n"
+ << "static const unsigned EmptyImpDefs[] = { 0 };\n";
+
// Emit all of the instruction's implicit uses and defs...
for (unsigned i = 0, e = Instructions.size(); i != e; ++i) {
Record *Inst = Instructions[i];
@@ -113,13 +117,13 @@ void InstrInfoEmitter::emitRecord(Record *R, unsigned Num, Record *InstrInfo,
// Emit the implicit uses and defs lists...
LI = R->getValueAsListInit("Uses");
if (!LI->getSize())
- OS << "0, ";
+ OS << "EmptyImpUses, ";
else
OS << R->getName() << "ImpUses, ";
LI = R->getValueAsListInit("Defs");
if (!LI->getSize())
- OS << "0 ";
+ OS << "EmptyImpDefs ";
else
OS << R->getName() << "ImpDefs ";