Lines Matching defs:CurMultiClass
197 if (CurMultiClass)
198 if (auto *V = FindValueInArgs(&CurMultiClass->Rec, Name))
214 CurRec = &CurMultiClass->Rec;
236 if (!CurRec) CurRec = &CurMultiClass->Rec;
397 return resolve(*E.Loop, Stack, CurMultiClass == nullptr,
398 CurMultiClass ? &CurMultiClass->Entries : nullptr);
402 if (CurMultiClass) {
403 CurMultiClass->Entries.push_back(std::move(E));
676 const Init *TGParser::ParseObjectName(MultiClass *CurMultiClass) {
690 if (CurMultiClass)
691 CurRec = &CurMultiClass->Rec;
698 if (CurMultiClass) {
699 const Init *NameStr = QualifiedNameOfImplicitName(CurMultiClass);
1164 if (const Init *I = CurScope->getVar(Records, CurMultiClass, Name, NameLoc,
1182 if (CurRec && !CurRec->isClass() && !CurMultiClass &&
3280 /// which case CurRec will be null, but CurMultiClass will be set). This can
3282 /// CurRec and CurMultiClass.
3326 assert(CurMultiClass && "invalid context for template argument");
3327 DeclName = QualifyName(CurMultiClass, DeclName);
3410 if (CurMultiClass) {
3445 Record *TheRecToAddTo = CurRec ? CurRec : &CurMultiClass->Rec;
3643 bool TGParser::ParseDef(MultiClass *CurMultiClass) {
3655 const Init *Name = ParseObjectName(CurMultiClass);
3805 bool TGParser::ParseForeach(MultiClass *CurMultiClass) {
3828 if (ParseObject(CurMultiClass))
3836 if (ParseObjectList(CurMultiClass))
3859 bool TGParser::ParseIf(MultiClass *CurMultiClass) {
3892 if (ParseIfBody(CurMultiClass, "then"))
3915 if (ParseIfBody(CurMultiClass, "else"))
3933 bool TGParser::ParseIfBody(MultiClass *CurMultiClass, StringRef Kind) {
3939 if (ParseObject(CurMultiClass))
3947 if (ParseObjectList(CurMultiClass))
3963 bool TGParser::ParseAssert(MultiClass *CurMultiClass, Record *CurRec) {
4093 bool TGParser::ParseTopLevelLet(MultiClass *CurMultiClass) {
4109 if (ParseObject(CurMultiClass))
4120 if (ParseObjectList(CurMultiClass))
4163 CurMultiClass = Result.first->second.get();
4167 TGVarScope *MulticlassScope = PushScope(CurMultiClass);
4182 ParseSubMultiClassReference(CurMultiClass);
4188 if (AddSubMultiClass(CurMultiClass, SubMultiClass))
4193 SubMultiClass = ParseSubMultiClassReference(CurMultiClass);
4220 if (ParseObject(CurMultiClass))
4236 CurMultiClass->Rec.checkUnusedTemplateArgs();
4239 CurMultiClass = nullptr;
4247 bool TGParser::ParseDefm(MultiClass *CurMultiClass) {
4251 const Init *DefmName = ParseObjectName(CurMultiClass);
4256 if (CurMultiClass)
4258 VarInit::get(QualifiedNameOfImplicitName(CurMultiClass),
4293 if (resolve(MC->Entries, Substs, !CurMultiClass && Loops.empty(),
4490 bool TGParser::ParseDump(MultiClass *CurMultiClass, Record *CurRec) {