[PATCH] D40845: [WebAssembly] COMDAT: LLD support

Nicholas Wilson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 11 04:22:24 PST 2018


ncw updated this revision to Diff 129430.
ncw marked an inline comment as done.
ncw edited the summary of this revision.
ncw added a comment.

Changes:

- Disentangled from https://reviews.llvm.org/D41390
- Changed to assume that all Functions/InputSegments are covered by Symbols. The "discardable" entities are the function and segment definitions, not the Symbols referring to them, so previously I was iterating over the Functions/Segments to make sure they were discarded. We know though that the MCWasmWriter will never output a COMDAT Function/Segment without an accompanying Symbol, so the change is safe.

One thing I did like a bit about the previous implementation was that it made Comdat behave pretty much just like (non-Comdat) weak symbols; now the Comdat symbols are discarded earlier, which I guess makes sense.


Repository:
  rLLD LLVM Linker

https://reviews.llvm.org/D40845

Files:
  test/wasm/Inputs/comdat1.ll
  test/wasm/Inputs/comdat2.ll
  test/wasm/comdats.ll
  test/wasm/relocatable.ll
  wasm/InputChunks.cpp
  wasm/InputChunks.h
  wasm/InputFiles.cpp
  wasm/InputFiles.h
  wasm/SymbolTable.cpp
  wasm/SymbolTable.h
  wasm/Writer.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D40845.129430.patch
Type: text/x-patch
Size: 19812 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180111/46e43d6e/attachment.bin>


More information about the llvm-commits mailing list