Implement Regression/TableGen/DagDefSubst.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27263 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2006-03-30 22:50:40 +00:00
parent 824b46f26f
commit 8c06318821
4 changed files with 45 additions and 41 deletions
+5 -3
View File
@@ -559,15 +559,17 @@ Init *DagInit::resolveReferences(Record &R, const RecordVal *RV) {
for (unsigned i = 0, e = Args.size(); i != e; ++i)
NewArgs.push_back(Args[i]->resolveReferences(R, RV));
if (Args != NewArgs)
return new DagInit(NodeTypeDef, NewArgs, ArgNames);
Init *Op = Val->resolveReferences(R, RV);
if (Args != NewArgs || Op != Val)
return new DagInit(Op, NewArgs, ArgNames);
return this;
}
void DagInit::print(std::ostream &OS) const {
OS << "(" << NodeTypeDef->getName();
OS << "(" << *Val;
if (Args.size()) {
OS << " " << *Args[0];
if (!ArgNames[0].empty()) OS << ":$" << ArgNames[0];