diff options
author | Fangrui Song <i@maskray.me> | 2021-07-20 12:47:10 -0700 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2021-07-20 12:47:10 -0700 |
commit | 392487793248f53726d2f9591966dbe42a89a17a (patch) | |
tree | f20ae2614f572e93c1c4473847c730bd9f21021c /llvm/lib/Linker/LinkModules.cpp | |
parent | 55c65884a41c4dec2c3efd056657cc7c590c1bcb (diff) | |
download | llvm-392487793248f53726d2f9591966dbe42a89a17a.zip llvm-392487793248f53726d2f9591966dbe42a89a17a.tar.gz llvm-392487793248f53726d2f9591966dbe42a89a17a.tar.bz2 |
[IR] Rename `comdat noduplicates` to `comdat nodeduplicate`
In the textual format, `noduplicates` means no COMDAT/section group
deduplication is performed. Therefore, if both sets of sections are retained, and
they happen to define strong external symbols with the same names,
there will be a duplicate definition linker error.
In PE/COFF, the selection kind lowers to `IMAGE_COMDAT_SELECT_NODUPLICATES`.
The name describes the corollary instead of the immediate semantics. The name
can cause confusion to other binary formats (ELF, wasm) which have implemented/
want to implement the "no deduplication" selection kind. Rename it to be clearer.
Reviewed By: rnk
Differential Revision: https://reviews.llvm.org/D106319
Diffstat (limited to 'llvm/lib/Linker/LinkModules.cpp')
-rw-r--r-- | llvm/lib/Linker/LinkModules.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Linker/LinkModules.cpp b/llvm/lib/Linker/LinkModules.cpp index 943c2fa..97d6f8c 100644 --- a/llvm/lib/Linker/LinkModules.cpp +++ b/llvm/lib/Linker/LinkModules.cpp @@ -177,9 +177,9 @@ bool ModuleLinker::computeResultingSelectionKind(StringRef ComdatName, // Go with Dst. LinkFromSrc = false; break; - case Comdat::SelectionKind::NoDuplicates: + case Comdat::SelectionKind::NoDeduplicate: return emitError("Linking COMDATs named '" + ComdatName + - "': noduplicates has been violated!"); + "': nodeduplicate has been violated!"); case Comdat::SelectionKind::ExactMatch: case Comdat::SelectionKind::Largest: case Comdat::SelectionKind::SameSize: { |