SDOperand Tmp0,Tmp1,Tmp2,Tmp3,;
GCC has a bug (24907) in which is fails to catch this, but VC++ correctly
notes its illegality, so tblgen must be taught to only generate legal C++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25075
91177308-0d34-0410-b5e6-
96231b3b80d8
std::string Fn = CP->getSelectFunc();
NumRes = CP->getNumOperands();
OS << " SDOperand ";
std::string Fn = CP->getSelectFunc();
NumRes = CP->getNumOperands();
OS << " SDOperand ";
- for (unsigned i = 0; i != NumRes; ++i)
+ unsigned i;
+ for (i = 0; i < NumRes - 1; ++i)
OS << "Tmp" << (i+ResNo) << ",";
OS << "Tmp" << (i+ResNo) << ",";
+ OS << "Tmp" << (i+ResNo) << ";\n";
OS << " if (!" << Fn << "(" << Val;
OS << " if (!" << Fn << "(" << Val;
- for (unsigned i = 0; i < NumRes; i++)
+ for (i = 0; i < NumRes; i++)
OS << ", Tmp" << i + ResNo;
OS << ")) goto P" << PatternNo << "Fail;\n";
TmpNo = ResNo + NumRes;
OS << ", Tmp" << i + ResNo;
OS << ")) goto P" << PatternNo << "Fail;\n";
TmpNo = ResNo + NumRes;