summaryrefslogtreecommitdiff
path: root/lib/TableGen
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-05-24 22:17:36 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-05-24 22:17:36 +0000
commit72cba6cdf640411e2fb6207858a0abd87c4286fc (patch)
treeea65f3d9cbaba881b40a3be74efdafb0b579f19f /lib/TableGen
parent8e5286e18ffbe4716ef92cd1de8901942d685e1b (diff)
downloadllvm-72cba6cdf640411e2fb6207858a0abd87c4286fc.tar.gz
llvm-72cba6cdf640411e2fb6207858a0abd87c4286fc.tar.bz2
llvm-72cba6cdf640411e2fb6207858a0abd87c4286fc.tar.xz
Don't put TGParser scratch results in the output.
Only fully expanded Records should go into RecordKeeper. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157431 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/TableGen')
-rw-r--r--lib/TableGen/TGParser.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/TableGen/TGParser.cpp b/lib/TableGen/TGParser.cpp
index 68d9ef4c09..b23f410013 100644
--- a/lib/TableGen/TGParser.cpp
+++ b/lib/TableGen/TGParser.cpp
@@ -1903,7 +1903,7 @@ bool TGParser::ParseDef(MultiClass *CurMultiClass) {
// Parse ObjectName and make a record for it.
Record *CurRec = new Record(ParseObjectName(CurMultiClass), DefLoc, Records);
- if (!CurMultiClass) {
+ if (!CurMultiClass && Loops.empty()) {
// Top-level def definition.
// Ensure redefinition doesn't happen.
@@ -1913,7 +1913,7 @@ bool TGParser::ParseDef(MultiClass *CurMultiClass) {
return true;
}
Records.addDef(CurRec);
- } else {
+ } else if (CurMultiClass) {
// Otherwise, a def inside a multiclass, add it to the multiclass.
for (unsigned i = 0, e = CurMultiClass->DefPrototypes.size(); i != e; ++i)
if (CurMultiClass->DefPrototypes[i]->getNameInit()