[DWARFLinker] Support parseable Swift interfaces in the parallel linker (#195475)
CompileUnit::Language was filtered through isODRLanguage at construction,
so non-ODR languages landed as std::nullopt and analyzeImportedModule's
Swift branch was never reached under --linker parallel. Store the raw
DW_AT_language and apply isODRLanguage only where ODR is actually
decided.
Reaching that branch then exposes a shared-map write from
parallelForEach workers. A mutex would make it safe but not
deterministic: conflict warnings and last-writer-wins contents would
depend on thread scheduling and diverge from the classic linker. Stage
entries per-CU and merge them serially in input order after analysis, so
results match classic regardless of schedule.
Because the diagnostics are emitted after unloading the input, we do
lose the originating DW_TAG_module. The warning still names the module
and both conflicting paths, which carries the load-bearing information.