Skip to content

Commit d7cd605

Browse files
committed
Adjust the Registration of the Pseudo-Job for External Incremental Dependencies
Register the module the external dependencies ride in with the pseudo-job in the Driver. This is a hack.
1 parent 82e9935 commit d7cd605

File tree

3 files changed

+2
-8
lines changed

3 files changed

+2
-8
lines changed

include/swift/Driver/FineGrainedDependencyDriverGraph.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,8 +278,6 @@ class ModuleDepGraph {
278278
assert(swiftDeps.hasValue() && "Don't call me for expats.");
279279
auto iter = jobsBySwiftDeps.find(swiftDeps.getValue());
280280
assert(iter != jobsBySwiftDeps.end() && "All jobs should be tracked.");
281-
assert(getSwiftDeps(iter->second) == swiftDeps.getValue() &&
282-
"jobsBySwiftDeps should be inverse of getSwiftDeps.");
283281
return iter->second;
284282
}
285283

lib/Driver/Compilation.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1161,10 +1161,6 @@ namespace driver {
11611161
continue;
11621162
}
11631163

1164-
// Is this module out of date? If not, just keep searching.
1165-
if (Comp.getLastBuildTime() >= depStatus.getLastModificationTime())
1166-
continue;
1167-
11681164
// Can we run a cross-module incremental build at all? If not, fallback.
11691165
if (!Comp.getEnableCrossModuleIncrementalBuild()) {
11701166
fallbackToExternalBehavior(external);

lib/Driver/FineGrainedDependencyDriverGraph.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ ModuleDepGraph::Changes ModuleDepGraph::loadFromSwiftModuleBuffer(
120120
SourceFileDepGraph::loadFromSwiftModuleBuffer(buffer);
121121
if (!sourceFileDepGraph)
122122
return None;
123-
registerJob(Cmd);
123+
jobsBySwiftDeps.insert(std::make_pair(buffer.getBufferIdentifier(), Cmd));
124124
auto changes = integrate(*sourceFileDepGraph, buffer.getBufferIdentifier());
125125
if (verifyFineGrainedDependencyGraphAfterEveryImport)
126126
verify();
@@ -445,11 +445,11 @@ bool ModuleDepGraph::recordWhatUseDependsUpon(
445445
StringRef externalSwiftDeps = def->getKey().getName();
446446
if (def->getKey().getKind() == NodeKind::externalDepend) {
447447
externalDependencies.insert(externalSwiftDeps.str());
448+
useHasNewExternalDependency = true;
448449
} else if (def->getKey().getKind() ==
449450
NodeKind::incrementalExternalDepend) {
450451
incrementalExternalDependencies.insert(externalSwiftDeps.str());
451452
}
452-
useHasNewExternalDependency = true;
453453
}
454454
});
455455
return useHasNewExternalDependency;

0 commit comments

Comments
 (0)