Lines Matching refs:CurMultiClass

66     CurRec = &CurMultiClass->Rec;
87 if (!CurRec) CurRec = &CurMultiClass->Rec;
397 Init *TGParser::ParseObjectName(MultiClass *CurMultiClass) {
411 if (CurMultiClass)
412 CurRec = &CurMultiClass->Rec;
736 Init *TemplateArgName = QualifyName(*CurRec, CurMultiClass, Name, ":");
738 if (CurMultiClass)
739 TemplateArgName = QualifyName(CurMultiClass->Rec, CurMultiClass, Name,
749 if (CurMultiClass) {
750 Init *MCName = QualifyName(CurMultiClass->Rec, CurMultiClass, Name,
753 if (CurMultiClass->Rec.isTemplateArg(MCName)) {
754 const RecordVal *RV = CurMultiClass->Rec.getValue(MCName);
899 return (UnOpInit::get(Code, LHS, Type))->Fold(CurRec, CurMultiClass);
980 ->Fold(CurRec, CurMultiClass);
987 ->Fold(CurRec, CurMultiClass);
1109 CurMultiClass);
1248 if (!CurMultiClass) {
1256 CurMultiClass->DefPrototypes.push_back(std::move(NewRecOwner));
1260 CurMultiClass->Rec.getTemplateArgs();
1263 const RecordVal *RV = CurMultiClass->Rec.getValue(TArgs[i]);
1270 const RecordVal *MCNameRV = CurMultiClass->Rec.getValue("NAME");
1617 StringRecTy::get())->Fold(CurRec, CurMultiClass);
1721 /// which case CurRec will be null, but CurMultiClass will be set). This can
1723 /// CurRec and CurMultiClass.
1747 DeclName = QualifyName(*CurRec, CurMultiClass, DeclName, ":");
1749 assert(CurMultiClass);
1751 if (CurMultiClass)
1752 DeclName = QualifyName(CurMultiClass->Rec, CurMultiClass, DeclName,
1866 Record *TheRecToAddTo = CurRec ? CurRec : &CurMultiClass->Rec;
2020 bool TGParser::ParseDef(MultiClass *CurMultiClass) {
2027 Init *Name = ParseObjectName(CurMultiClass);
2035 if (!CurMultiClass && Loops.empty()) {
2046 } else if (CurMultiClass) {
2056 for (unsigned i = 0, e = CurMultiClass->DefPrototypes.size(); i != e; ++i)
2057 if (CurMultiClass->DefPrototypes[i]->getNameInit()
2061 CurMultiClass->DefPrototypes.push_back(std::move(CurRecOwner));
2066 if (!CurMultiClass) // Def's in multiclasses aren't really defs.
2075 if (CurMultiClass) {
2078 CurMultiClass->Rec.getTemplateArgs();
2081 const RecordVal *RV = CurMultiClass->Rec.getValue(TArgs[i]);
2101 bool TGParser::ParseForeach(MultiClass *CurMultiClass) {
2121 if (ParseObject(CurMultiClass))
2130 if (ParseObjectList(CurMultiClass))
2231 bool TGParser::ParseTopLevelLet(MultiClass *CurMultiClass) {
2247 if (ParseObject(CurMultiClass))
2255 if (ParseObjectList(CurMultiClass))
2295 CurMultiClass = Result.first->second.get();
2313 ParseSubMultiClassReference(CurMultiClass);
2319 if (AddSubMultiClass(CurMultiClass, SubMultiClass))
2324 SubMultiClass = ParseSubMultiClassReference(CurMultiClass);
2346 if (ParseObject(CurMultiClass))
2354 CurMultiClass = nullptr;
2420 if (!CurMultiClass) {
2498 if (!CurMultiClass)
2500 for (unsigned i = 0, e = CurMultiClass->DefPrototypes.size();
2502 if (CurMultiClass->DefPrototypes[i]->getNameInit()
2506 CurMultiClass->DefPrototypes.push_back(std::unique_ptr<Record>(CurRec));
2510 CurMultiClass->Rec.getTemplateArgs();
2513 const RecordVal *RV = CurMultiClass->Rec.getValue(TA[i]);
2525 bool TGParser::ParseDefm(MultiClass *CurMultiClass) {
2531 DefmPrefix = ParseObjectName(CurMultiClass);
2585 if (DefProto->isResolveFirst() && !CurMultiClass) {
2638 if (!CurMultiClass)