Lines Matching refs:Mod
58 void ModuleMap::resolveLinkAsDependencies(Module *Mod) { in resolveLinkAsDependencies() argument
59 auto PendingLinkAs = PendingLinkAsModule.find(Mod->Name); in resolveLinkAsDependencies()
69 void ModuleMap::addLinkAsDependency(Module *Mod) { in addLinkAsDependency() argument
70 if (findModule(Mod->ExportAsModule)) in addLinkAsDependency()
71 Mod->UseExportAsModuleLinkName = true; in addLinkAsDependency()
73 PendingLinkAsModule[Mod->ExportAsModule].insert(Mod->Name); in addLinkAsDependency()
114 ModuleMap::resolveExport(Module *Mod, in resolveExport() argument
124 Module *Context = resolveModuleId(Unresolved.Id, Mod, Complain); in resolveExport()
131 Module *ModuleMap::resolveModuleId(const ModuleId &Id, Module *Mod, in resolveModuleId() argument
134 Module *Context = lookupModuleUnqualified(Id[0].first, Mod); in resolveModuleId()
138 << Id[0].first << Mod->getFullModuleName(); in resolveModuleId()
163 static void appendSubframeworkPaths(Module *Mod, in appendSubframeworkPaths() argument
167 for (; Mod; Mod = Mod->Parent) { in appendSubframeworkPaths()
168 if (Mod->IsFramework) in appendSubframeworkPaths()
169 Paths.push_back(Mod->Name); in appendSubframeworkPaths()
295 void ModuleMap::resolveHeader(Module *Mod, in resolveHeader() argument
300 findHeader(Mod, Header, RelativePathName, NeedsFramework)) { in resolveHeader()
308 setUmbrellaHeaderAsWritten(Mod, *File, Header.FileName, in resolveHeader()
313 addHeader(Mod, H, headerKindToRole(Header.Kind)); in resolveHeader()
323 Mod->MissingHeaders.push_back(Header); in resolveHeader()
329 Mod->markUnavailable(/*Unimportable=*/false); in resolveHeader()
334 Module *Mod, const Module::UnresolvedHeaderDirective &Header) { in resolveAsBuiltinHeader() argument
337 Mod->isPartOfFramework() || !Mod->IsSystem || Header.IsUmbrella || in resolveAsBuiltinHeader()
338 !BuiltinIncludeDir || BuiltinIncludeDir == Mod->Directory || in resolveAsBuiltinHeader()
353 addHeader(Mod, H, Role); in resolveAsBuiltinHeader()
981 static void inferFrameworkLink(Module *Mod) { in inferFrameworkLink() argument
982 assert(Mod->IsFramework && "Can only infer linking for framework modules"); in inferFrameworkLink()
983 assert(!Mod->isSubFramework() && in inferFrameworkLink()
986 StringRef FrameworkName(Mod->Name); in inferFrameworkLink()
988 Mod->LinkLibraries.push_back(Module::LinkLibrary(FrameworkName.str(), in inferFrameworkLink()
1016 if (Module *Mod = lookupModuleQualified(ModuleName, Parent)) in inferFrameworkModule() local
1017 return Mod; in inferFrameworkModule()
1187 Module *Mod, FileEntryRef UmbrellaHeader, const Twine &NameAsWritten, in setUmbrellaHeaderAsWritten() argument
1189 Headers[UmbrellaHeader].push_back(KnownHeader(Mod, NormalHeader)); in setUmbrellaHeaderAsWritten()
1190 Mod->Umbrella = UmbrellaHeader; in setUmbrellaHeaderAsWritten()
1191 Mod->UmbrellaAsWritten = NameAsWritten.str(); in setUmbrellaHeaderAsWritten()
1192 Mod->UmbrellaRelativeToRootModuleDirectory = in setUmbrellaHeaderAsWritten()
1194 UmbrellaDirs[UmbrellaHeader.getDir()] = Mod; in setUmbrellaHeaderAsWritten()
1202 Module *Mod, DirectoryEntryRef UmbrellaDir, const Twine &NameAsWritten, in setUmbrellaDirAsWritten() argument
1204 Mod->Umbrella = UmbrellaDir; in setUmbrellaDirAsWritten()
1205 Mod->UmbrellaAsWritten = NameAsWritten.str(); in setUmbrellaDirAsWritten()
1206 Mod->UmbrellaRelativeToRootModuleDirectory = in setUmbrellaDirAsWritten()
1208 UmbrellaDirs[UmbrellaDir] = Mod; in setUmbrellaDirAsWritten()
1211 void ModuleMap::addUnresolvedHeader(Module *Mod, in addUnresolvedHeader() argument
1216 if (resolveAsBuiltinHeader(Mod, Header)) { in addUnresolvedHeader()
1235 LazyHeadersByModTime[*Header.ModTime].push_back(Mod); in addUnresolvedHeader()
1237 LazyHeadersBySize[*Header.Size].push_back(Mod); in addUnresolvedHeader()
1238 Mod->UnresolvedHeaders.push_back(Header); in addUnresolvedHeader()
1244 resolveHeader(Mod, Header, NeedsFramework); in addUnresolvedHeader()
1264 Module *Mod, std::optional<const FileEntry *> File) const { in resolveHeaderDirectives() argument
1270 for (auto &Header : Mod->UnresolvedHeaders) { in resolveHeaderDirectives()
1277 const_cast<ModuleMap *>(this)->resolveHeader(Mod, Header, NeedsFramework); in resolveHeaderDirectives()
1279 Mod->UnresolvedHeaders.swap(NewHeaders); in resolveHeaderDirectives()
1282 void ModuleMap::addHeader(Module *Mod, Module::Header Header, in addHeader() argument
1284 KnownHeader KH(Mod, Role); in addHeader()
1294 Mod->Headers[headerRoleToKind(Role)].push_back(Header); in addHeader()
1296 bool isCompilingModuleHeader = Mod->isForBuilding(LangOpts); in addHeader()
1399 bool ModuleMap::resolveExports(Module *Mod, bool Complain) { in resolveExports() argument
1400 auto Unresolved = std::move(Mod->UnresolvedExports); in resolveExports()
1401 Mod->UnresolvedExports.clear(); in resolveExports()
1403 Module::ExportDecl Export = resolveExport(Mod, UE, Complain); in resolveExports()
1405 Mod->Exports.push_back(Export); in resolveExports()
1407 Mod->UnresolvedExports.push_back(UE); in resolveExports()
1409 return !Mod->UnresolvedExports.empty(); in resolveExports()
1412 bool ModuleMap::resolveUses(Module *Mod, bool Complain) { in resolveUses() argument
1413 auto *Top = Mod->getTopLevelModule(); in resolveUses()
1426 bool ModuleMap::resolveConflicts(Module *Mod, bool Complain) { in resolveConflicts() argument
1427 auto Unresolved = std::move(Mod->UnresolvedConflicts); in resolveConflicts()
1428 Mod->UnresolvedConflicts.clear(); in resolveConflicts()
1430 if (Module *OtherMod = resolveModuleId(UC.Id, Mod, Complain)) { in resolveConflicts()
1434 Mod->Conflicts.push_back(Conflict); in resolveConflicts()
1436 Mod->UnresolvedConflicts.push_back(UC); in resolveConflicts()
1438 return !Mod->UnresolvedConflicts.empty(); in resolveConflicts()