@@ -446,7 +446,7 @@ namespace driver {
446
446
447
447
std::vector<const Job*>
448
448
reloadAndRemarkDeps (const Job *FinishedCmd, int ReturnCode,
449
- const bool forRanges) {
449
+ const bool forRanges) {
450
450
const CommandOutput &Output = FinishedCmd->getOutput ();
451
451
StringRef DependenciesFile =
452
452
Output.getAdditionalOutputForType (file_types::TY_SwiftDeps);
@@ -458,8 +458,7 @@ namespace driver {
458
458
// coarse dependencies that always affect downstream nodes), but we're
459
459
// not using either of those right now, and this logic should probably
460
460
// be revisited when we are.
461
- assert (isa<MergeModuleJobAction>(FinishedCmd->getSource ()) ||
462
- FinishedCmd->getCondition () == Job::Condition::Always);
461
+ assert (FinishedCmd->getCondition () == Job::Condition::Always);
463
462
return {};
464
463
}
465
464
const bool compileExitedNormally =
@@ -908,7 +907,6 @@ namespace driver {
908
907
return everyIncrementalJob;
909
908
};
910
909
911
- const Job *mergeModulesJob = nullptr ;
912
910
CommandSet jobsToSchedule;
913
911
CommandSet initialCascadingCommands;
914
912
for (const Job *cmd : Comp.getJobs ()) {
@@ -917,11 +915,6 @@ namespace driver {
917
915
continue ;
918
916
}
919
917
920
- if (isa<MergeModuleJobAction>(cmd->getSource ())) {
921
- assert (!mergeModulesJob && " multiple scheduled merge-modules jobs?" );
922
- mergeModulesJob = cmd;
923
- }
924
-
925
918
const Optional<std::pair<bool , bool >> shouldSchedAndIsCascading =
926
919
computeShouldInitiallyScheduleJobAndDependendents (cmd, forRanges);
927
920
if (!shouldSchedAndIsCascading)
@@ -943,15 +936,6 @@ namespace driver {
943
936
collectIncrementalExternallyDependentJobsFromDependencyGraph (
944
937
forRanges))
945
938
jobsToSchedule.insert (cmd);
946
-
947
- // The merge-modules job is special: it *must* be scheduled if any other
948
- // job has been scheduled because any other job can influence the
949
- // structure of the resulting module. Additionally, the initial scheduling
950
- // predicate above is only aware of intra-module changes. External
951
- // dependencies changing *must* cause merge-modules to be scheduled.
952
- if (!jobsToSchedule.empty () && mergeModulesJob) {
953
- jobsToSchedule.insert (mergeModulesJob);
954
- }
955
939
return jobsToSchedule;
956
940
}
957
941
@@ -1047,13 +1031,6 @@ namespace driver {
1047
1031
// / But returns None if there was a dependency read error.
1048
1032
Optional<std::pair<Job::Condition, bool >>
1049
1033
loadDependenciesAndComputeCondition (const Job *const Cmd, bool forRanges) {
1050
- // merge-modules Jobs do not have .swiftdeps files associated with them,
1051
- // however, their compilation condition is computed as a function of their
1052
- // inputs, so their condition can be used as normal.
1053
- if (isa<MergeModuleJobAction>(Cmd->getSource ())) {
1054
- return std::make_pair (Cmd->getCondition (), true );
1055
- }
1056
-
1057
1034
// Try to load the dependencies file for this job. If there isn't one, we
1058
1035
// always have to run the job, but it doesn't affect any other jobs. If
1059
1036
// there should be one but it's not present or can't be loaded, we have to
@@ -1186,12 +1163,7 @@ namespace driver {
1186
1163
continue ;
1187
1164
}
1188
1165
1189
- // Is this module out of date? If not, just keep searching.
1190
- if (Comp.getLastBuildTime () >= depStatus.getLastModificationTime ())
1191
- continue ;
1192
-
1193
- // Can we run a cross-module incremental build at all?
1194
- // If not, fall back.
1166
+ // Can we run a cross-module incremental build at all? If not, fallback.
1195
1167
if (!Comp.getEnableCrossModuleIncrementalBuild ()) {
1196
1168
fallbackToExternalBehavior (external);
1197
1169
continue ;
@@ -1637,8 +1609,8 @@ namespace driver {
1637
1609
CompileJobAction::InputInfo info;
1638
1610
info.previousModTime = entry.first ->getInputModTime ();
1639
1611
info.status = entry.second ?
1640
- CompileJobAction::InputInfo::Status:: NeedsCascadingBuild :
1641
- CompileJobAction::InputInfo::Status:: NeedsNonCascadingBuild;
1612
+ CompileJobAction::InputInfo::NeedsCascadingBuild :
1613
+ CompileJobAction::InputInfo::NeedsNonCascadingBuild;
1642
1614
inputs[&inputFile->getInputArg ()] = info;
1643
1615
}
1644
1616
}
@@ -1655,7 +1627,7 @@ namespace driver {
1655
1627
1656
1628
CompileJobAction::InputInfo info;
1657
1629
info.previousModTime = entry->getInputModTime ();
1658
- info.status = CompileJobAction::InputInfo::Status:: UpToDate;
1630
+ info.status = CompileJobAction::InputInfo::UpToDate;
1659
1631
inputs[&inputFile->getInputArg ()] = info;
1660
1632
}
1661
1633
}
0 commit comments