[PATCH] D106319: [IR] Rename `comdat noduplicates` to `comdat nodeduplicate`

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 19 15:08:34 PDT 2021


MaskRay created this revision.
MaskRay added reviewers: rnk, sbc100, tejohnson.
Herald added subscribers: ormris, dexonsmith, jdoerfert, pengfei, steven_wu, sunfish, hiraditya.
MaskRay requested review of this revision.
Herald added subscribers: llvm-commits, aheejin.
Herald added a project: LLVM.

In the textual format, `noduplicates` means no COMDAT/section group
deduplication is performed. Therefore, a multiply defined symbol in two IR
comdats can cause 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.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D106319

Files:
  llvm/docs/BitCodeFormat.rst
  llvm/docs/LangRef.rst
  llvm/include/llvm/AsmParser/LLToken.h
  llvm/include/llvm/IR/Comdat.h
  llvm/lib/AsmParser/LLLexer.cpp
  llvm/lib/AsmParser/LLParser.cpp
  llvm/lib/Bitcode/Reader/BitcodeReader.cpp
  llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
  llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
  llvm/lib/IR/AsmWriter.cpp
  llvm/lib/IR/Comdat.cpp
  llvm/lib/Linker/LinkModules.cpp
  llvm/lib/Transforms/IPO/Internalize.cpp
  llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
  llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
  llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
  llvm/test/Bitcode/compatibility-3.6.ll
  llvm/test/Bitcode/compatibility-3.7.ll
  llvm/test/Bitcode/compatibility-3.8.ll
  llvm/test/Bitcode/compatibility-3.9.ll
  llvm/test/Bitcode/compatibility-4.0.ll
  llvm/test/Bitcode/compatibility-5.0.ll
  llvm/test/Bitcode/compatibility-6.0.ll
  llvm/test/Bitcode/compatibility.ll
  llvm/test/CodeGen/X86/coff-comdat.ll
  llvm/test/CodeGen/X86/elf-group.ll
  llvm/test/CodeGen/X86/gcc_except_table-multi.ll
  llvm/test/Instrumentation/AddressSanitizer/global_metadata_windows.ll
  llvm/test/Instrumentation/InstrProfiling/linkage.ll
  llvm/test/Instrumentation/SanitizerCoverage/coff-comdat.ll
  llvm/test/Instrumentation/SanitizerCoverage/inline-bool-flag.ll
  llvm/test/Instrumentation/SanitizerCoverage/interposable-symbol.ll
  llvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard.ll
  llvm/test/Linker/Inputs/comdat3.ll
  llvm/test/Linker/comdat4.ll
  llvm/test/SymbolRewriter/rewrite.ll
  llvm/test/Transforms/Internalize/comdat.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106319.359936.patch
Type: text/x-patch
Size: 24317 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210719/788e55db/attachment.bin>


More information about the llvm-commits mailing list