diff options
| author | Joshua Cranmer <joshua.cranmer@intel.com> | 2025-10-24 16:07:49 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-24 16:07:49 -0400 |
| commit | 0b01b96864983c4b150776b869a3d048b0d50e2c (patch) | |
| tree | 40908864286534950dee3f320075537a6082553c /llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | |
| parent | 251edd122808f1849adb8000119ba9134793a294 (diff) | |
| download | llvm-0b01b96864983c4b150776b869a3d048b0d50e2c.zip llvm-0b01b96864983c4b150776b869a3d048b0d50e2c.tar.gz llvm-0b01b96864983c4b150776b869a3d048b0d50e2c.tar.bz2 | |
[LLD][COFF] Deduplicate common chunks when linking COFF files. (#162553)
This fixes [issue
162148](https://github.com/llvm/llvm-project/issues/162148).
Common symbols are intended to have only a single version of the data
present in the final executable. The MSVC linker is able to successfully
deduplicate these chunks. If you have an application with a large number
of translation units with a large block of common data (this is
possible, for example, with Fortran code), then failing to deduplicate
these chunks can make the data size so large that the resulting
executable fails to load.
The logic in this patch doesn't catch all of the potential cases for
deduplication, but it should catch the most common ones.
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions
