aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/TableGen/TGParser.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2014-11-29 05:52:51 +0000
committerCraig Topper <craig.topper@gmail.com>2014-11-29 05:52:51 +0000
commitcdab2326b8f583549c0956e470c1c77c663e6c02 (patch)
treeb9bba00a9c404579d686110b63a7c3b911d0d235 /llvm/lib/TableGen/TGParser.cpp
parent8413871a7c815478dd4b83dbebea5c1f4b17222b (diff)
downloadllvm-cdab2326b8f583549c0956e470c1c77c663e6c02.zip
llvm-cdab2326b8f583549c0956e470c1c77c663e6c02.tar.gz
llvm-cdab2326b8f583549c0956e470c1c77c663e6c02.tar.bz2
Make RecordKeeper::addClass/addDef take unique_ptrs instead of creating one internally.
llvm-svn: 222948
Diffstat (limited to 'llvm/lib/TableGen/TGParser.cpp')
-rw-r--r--llvm/lib/TableGen/TGParser.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/llvm/lib/TableGen/TGParser.cpp b/llvm/lib/TableGen/TGParser.cpp
index c594da8..8f83714 100644
--- a/llvm/lib/TableGen/TGParser.cpp
+++ b/llvm/lib/TableGen/TGParser.cpp
@@ -371,7 +371,7 @@ bool TGParser::ProcessForeachDefs(Record *CurRec, SMLoc Loc, IterSet &IterVals){
}
Record *IterRecSave = IterRec.get(); // Keep a copy before release.
- Records.addDef(IterRec.release());
+ Records.addDef(std::move(IterRec));
IterRecSave->resolveReferences();
return false;
}
@@ -1252,7 +1252,7 @@ Init *TGParser::ParseSimpleValue(Record *CurRec, RecTy *ItemType,
if (!CurMultiClass) {
NewRec->resolveReferences();
- Records.addDef(NewRecOwner.release());
+ Records.addDef(std::move(NewRecOwner));
} else {
// This needs to get resolved once the multiclass template arguments are
// known before any use.
@@ -2044,7 +2044,7 @@ bool TGParser::ParseDef(MultiClass *CurMultiClass) {
if (Records.getDef(CurRec->getNameInitAsString()))
return Error(DefLoc, "def '" + CurRec->getNameInitAsString()+
"' already defined");
- Records.addDef(CurRecOwner.release());
+ Records.addDef(std::move(CurRecOwner));
if (ParseObjectBody(CurRec))
return true;
@@ -2169,8 +2169,10 @@ bool TGParser::ParseClass() {
+ "' already defined");
} else {
// If this is the first reference to this class, create and add it.
- CurRec = new Record(Lex.getCurStrVal(), Lex.getLoc(), Records);
- Records.addClass(CurRec);
+ auto NewRec = make_unique<Record>(Lex.getCurStrVal(), Lex.getLoc(),
+ Records);
+ CurRec = NewRec.get();
+ Records.addClass(std::move(NewRec));
}
Lex.Lex(); // eat the name.
@@ -2442,7 +2444,7 @@ InstantiateMulticlassDef(MultiClass &MC,
}
Record *CurRecSave = CurRec.get(); // Keep a copy before we release.
- Records.addDef(CurRec.release());
+ Records.addDef(std::move(CurRec));
return CurRecSave;
}