@@ -84,7 +84,8 @@ class FailedPrerequisiteModules : public PrerequisiteModules {
84
84
85
85
// We shouldn't adjust the compilation commands based on
86
86
// FailedPrerequisiteModules.
87
- void adjustHeaderSearchOptions (HeaderSearchOptions &Options) const override {}
87
+ void adjustHeaderSearchOptions (HeaderSearchOptions &Options) const override {
88
+ }
88
89
89
90
// FailedPrerequisiteModules can never be reused.
90
91
bool
@@ -429,21 +430,21 @@ class CachingProjectModules : public ProjectModules {
429
430
// / Collect the directly and indirectly required module names for \param
430
431
// / ModuleName in topological order. The \param ModuleName is guaranteed to
431
432
// / be the last element in \param ModuleNames.
432
- llvm::SmallVector<std::string > getAllRequiredModules (PathRef RequiredSource,
433
- CachingProjectModules &MDB,
434
- StringRef ModuleName) {
435
- llvm::SmallVector<std::string > ModuleNames;
433
+ llvm::SmallVector<StringRef > getAllRequiredModules (PathRef RequiredSource,
434
+ CachingProjectModules &MDB,
435
+ StringRef ModuleName) {
436
+ llvm::SmallVector<llvm::StringRef > ModuleNames;
436
437
llvm::StringSet<> ModuleNamesSet;
437
438
438
439
auto VisitDeps = [&](StringRef ModuleName, auto Visitor) -> void {
439
440
ModuleNamesSet.insert (ModuleName);
440
441
441
- for (const std::string & RequiredModuleName : MDB.getRequiredModules (
442
+ for (StringRef RequiredModuleName : MDB.getRequiredModules (
442
443
MDB.getSourceForModuleName (ModuleName, RequiredSource)))
443
444
if (ModuleNamesSet.insert (RequiredModuleName).second )
444
445
Visitor (RequiredModuleName, Visitor);
445
446
446
- ModuleNames.push_back (ModuleName. str () );
447
+ ModuleNames.push_back (ModuleName);
447
448
};
448
449
VisitDeps (ModuleName, VisitDeps);
449
450
@@ -493,30 +494,28 @@ llvm::Error ModulesBuilder::ModulesBuilderImpl::getOrBuildModuleFile(
493
494
// Get Required modules in topological order.
494
495
auto ReqModuleNames = getAllRequiredModules (RequiredSource, MDB, ModuleName);
495
496
for (llvm::StringRef ReqModuleName : ReqModuleNames) {
496
- if (BuiltModuleFiles.isModuleUnitBuilt (ReqModuleName ))
497
+ if (BuiltModuleFiles.isModuleUnitBuilt (ModuleName ))
497
498
continue ;
498
499
499
500
if (auto Cached = Cache.getModule (ReqModuleName)) {
500
501
if (IsModuleFileUpToDate (Cached->getModuleFilePath (), BuiltModuleFiles,
501
502
TFS.view (std::nullopt))) {
502
- log (" Reusing module {0} from {1}" , ReqModuleName ,
503
+ log (" Reusing module {0} from {1}" , ModuleName ,
503
504
Cached->getModuleFilePath ());
504
505
BuiltModuleFiles.addModuleFile (std::move (Cached));
505
506
continue ;
506
507
}
507
508
Cache.remove (ReqModuleName);
508
509
}
509
510
510
- std::string ReqFileName =
511
- MDB.getSourceForModuleName (ReqModuleName, RequiredSource);
512
511
llvm::Expected<ModuleFile> MF = buildModuleFile (
513
- ReqModuleName, ReqFileName , getCDB (), TFS, BuiltModuleFiles);
512
+ ModuleName, ModuleUnitFileName , getCDB (), TFS, BuiltModuleFiles);
514
513
if (llvm::Error Err = MF.takeError ())
515
514
return Err;
516
515
517
- log (" Built module {0} to {1}" , ReqModuleName , MF->getModuleFilePath ());
516
+ log (" Built module {0} to {1}" , ModuleName , MF->getModuleFilePath ());
518
517
auto BuiltModuleFile = std::make_shared<const ModuleFile>(std::move (*MF));
519
- Cache.add (ReqModuleName , BuiltModuleFile);
518
+ Cache.add (ModuleName , BuiltModuleFile);
520
519
BuiltModuleFiles.addModuleFile (std::move (BuiltModuleFile));
521
520
}
522
521
0 commit comments