@@ -239,13 +239,7 @@ extension Driver {
239239
240240 var linkerInputs = [ TypedVirtualPath] ( )
241241 func addLinkerInput( _ li: TypedVirtualPath ) { linkerInputs. append ( li) }
242-
243- var moduleInputs = [ TypedVirtualPath] ( )
244242 let acceptBitcodeAsLinkerInput = lto == . llvmThin || lto == . llvmFull
245- func addModuleInput( _ mi: TypedVirtualPath ) { moduleInputs. append ( mi) }
246- var moduleInputsFromJobOutputs = [ TypedVirtualPath] ( )
247- func addModuleInputFromJobOutputs( _ mis: TypedVirtualPath ) {
248- moduleInputsFromJobOutputs. append ( mis) }
249243
250244 func addJobOutputs( _ jobOutputs: [ TypedVirtualPath ] ) {
251245 for jobOutput in jobOutputs {
@@ -254,8 +248,6 @@ extension Driver {
254248 addLinkerInput ( jobOutput)
255249 case . llvmBitcode where acceptBitcodeAsLinkerInput:
256250 addLinkerInput ( jobOutput)
257- case . swiftModule:
258- addModuleInputFromJobOutputs ( jobOutput)
259251
260252 default :
261253 break
@@ -296,7 +288,7 @@ extension Driver {
296288 try addPostModuleFilesJobs ( emitModuleJob)
297289
298290 try addWrapJobOrMergeOutputs (
299- mergeJob : emitModuleJob,
291+ emitModuleJob : emitModuleJob,
300292 debugInfo: debugInfo,
301293 addJob: addJobAfterCompiles,
302294 addLinkerInput: addLinkerInput)
@@ -311,28 +303,13 @@ extension Driver {
311303
312304 try addJobsForPrimaryInputs (
313305 addCompileJob: addCompileJob,
314- addModuleInput: addModuleInput,
315306 addLinkerInput: addLinkerInput,
316307 addJobOutputs: addJobOutputs,
317308 pchCompileJob: jobCreatingPch)
318309
319310 try addAutolinkExtractJob ( linkerInputs: linkerInputs,
320311 addLinkerInput: addLinkerInput,
321312 addJob: addJobAfterCompiles)
322-
323- // Merge-module
324- if let mergeJob = try mergeModuleJob (
325- moduleInputs: moduleInputs,
326- moduleInputsFromJobOutputs: moduleInputsFromJobOutputs) {
327- addJobAfterCompiles ( mergeJob)
328- try addPostModuleFilesJobs ( mergeJob)
329-
330- try addWrapJobOrMergeOutputs (
331- mergeJob: mergeJob,
332- debugInfo: debugInfo,
333- addJob: addJobAfterCompiles,
334- addLinkerInput: addLinkerInput)
335- }
336313 return linkerInputs
337314 }
338315
@@ -361,7 +338,6 @@ extension Driver {
361338
362339 private mutating func addJobsForPrimaryInputs(
363340 addCompileJob: ( Job ) -> Void ,
364- addModuleInput: ( TypedVirtualPath ) -> Void ,
365341 addLinkerInput: ( TypedVirtualPath ) -> Void ,
366342 addJobOutputs: ( [ TypedVirtualPath ] ) -> Void ,
367343 pchCompileJob: Job ? )
@@ -374,7 +350,6 @@ extension Driver {
374350 try addJobForPrimaryInput (
375351 input: input,
376352 addCompileJob: addCompileJob,
377- addModuleInput: addModuleInput,
378353 addLinkerInput: addLinkerInput,
379354 addJobOutputs: addJobOutputs,
380355 pchCompileJob: pchCompileJob,
@@ -385,7 +360,6 @@ extension Driver {
385360 private mutating func addJobForPrimaryInput(
386361 input: TypedVirtualPath ,
387362 addCompileJob: ( Job ) -> Void ,
388- addModuleInput: ( TypedVirtualPath ) -> Void ,
389363 addLinkerInput: ( TypedVirtualPath ) -> Void ,
390364 addJobOutputs: ( [ TypedVirtualPath ] ) -> Void ,
391365 pchCompileJob: Job ? ,
@@ -416,13 +390,8 @@ extension Driver {
416390 }
417391
418392 case . swiftModule:
419- if moduleOutputInfo. output != nil && linkerOutputType == nil {
420- // When generating a .swiftmodule as a top-level output (as opposed
421- // to, for example, linking an image), treat .swiftmodule files as
422- // inputs to a MergeModule action.
423- addModuleInput ( input)
424- } else if linkerOutputType != nil {
425- // Otherwise, if linking, pass .swiftmodule files as inputs to the
393+ if linkerOutputType != nil {
394+ // If linking, pass .swiftmodule files as inputs to the
426395 // linker, so that their debug info is available.
427396 addLinkerInput ( input)
428397 } else {
@@ -456,19 +425,6 @@ extension Driver {
456425 addCompileJob ( compile)
457426 }
458427
459- /// Need a merge module job if there are module inputs
460- private mutating func mergeModuleJob(
461- moduleInputs: [ TypedVirtualPath ] ,
462- moduleInputsFromJobOutputs: [ TypedVirtualPath ]
463- ) throws -> Job ? {
464- guard moduleOutputInfo. output != nil ,
465- !( moduleInputs. isEmpty && moduleInputsFromJobOutputs. isEmpty) ,
466- compilerMode. usesPrimaryFileInputs,
467- !emitModuleSeparately
468- else { return nil }
469- return try mergeModuleJob ( inputs: moduleInputs, inputsFromOutputs: moduleInputsFromJobOutputs)
470- }
471-
472428 func getAdopterConfigPathFromXcodeDefaultToolchain( ) -> AbsolutePath ? {
473429 let swiftPath = try ? toolchain. resolvedTool ( . swiftCompiler) . path
474430 guard var swiftPath = swiftPath else {
@@ -611,22 +567,22 @@ extension Driver {
611567 }
612568 }
613569
614- private mutating func addWrapJobOrMergeOutputs( mergeJob : Job ,
570+ private mutating func addWrapJobOrMergeOutputs( emitModuleJob : Job ,
615571 debugInfo: DebugInfo ,
616572 addJob: ( Job ) -> Void ,
617573 addLinkerInput: ( TypedVirtualPath ) -> Void )
618574 throws {
619575 guard case . astTypes = debugInfo. level else { return }
620576
621- let mergeModuleOutputs = mergeJob . outputs. filter { $0. type == . swiftModule }
622- assert ( mergeModuleOutputs . count == 1 ,
623- " Merge module job should only have one swiftmodule output" )
577+ let moduleOutputs = emitModuleJob . outputs. filter { $0. type == . swiftModule }
578+ assert ( moduleOutputs . count == 1 ,
579+ " Emit module job should only have one swiftmodule output" )
624580
625581 if targetTriple. objectFormat == . macho {
626- addLinkerInput ( mergeModuleOutputs [ 0 ] )
582+ addLinkerInput ( moduleOutputs [ 0 ] )
627583 } else {
628584 // Module wrapping is required.
629- let wrapJob = try moduleWrapJob ( moduleInput: mergeModuleOutputs [ 0 ] )
585+ let wrapJob = try moduleWrapJob ( moduleInput: moduleOutputs [ 0 ] )
630586 addJob ( wrapJob)
631587
632588 wrapJob. outputs. forEach ( addLinkerInput)
0 commit comments