hanchenye-llvm-project/lld/wasm
Sam Clegg accad76c14 [lld][WebAssembly] Fix handling of comdat functions in init array.
When hidden symbols are discarded by comdat rules we still want to
create a local defined symbol, otherwise `Symbol::isDiscarded()` relies
on begin able to check `getChunk->discarded`.

This is a followup on rL362769. The comdat.ll test was previously GC'ing
the `__wasm_call_ctors` functions so `do_init` was not actually being
included in the link.  Once that function was included in triggered the
crash bug that this change addresses.

Fixes: https://github.com/emscripten-core/emscripten/issues/8981

Differential Revision: https://reviews.llvm.org/D64872

llvm-svn: 366358
2019-07-17 18:43:36 +00:00
..
CMakeLists.txt [WebAssembly] Refactor synthetic sections and relocation processing. NFC. 2019-05-21 09:13:09 +00:00
Config.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Driver.cpp [WebAssembly] Implement thread-local storage (local-exec model) 2019-07-16 22:00:45 +00:00
InputChunks.cpp [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
InputChunks.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
InputEvent.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
InputFiles.cpp [lld][WebAssembly] Fix handling of comdat functions in init array. 2019-07-17 18:43:36 +00:00
InputFiles.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
InputGlobal.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
LTO.cpp [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
LTO.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MarkLive.cpp [WebAssembly] Rename variale references in comments after VariableName -> variableName change 2019-07-16 08:08:17 +00:00
MarkLive.h
Options.td [WebAssembly] Add option to emit passive segments 2019-07-03 22:04:54 +00:00
OutputSections.cpp [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
OutputSections.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
OutputSegment.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Relocations.cpp [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Relocations.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
SymbolTable.cpp [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
SymbolTable.h [WebAssembly] Rename variale references in comments after VariableName -> variableName change 2019-07-16 08:08:17 +00:00
Symbols.cpp [WebAssembly] Implement thread-local storage (local-exec model) 2019-07-16 22:00:45 +00:00
Symbols.h [WebAssembly] Implement thread-local storage (local-exec model) 2019-07-16 22:00:45 +00:00
SyntheticSections.cpp [WebAssembly] Rename variale references in comments after VariableName -> variableName change 2019-07-16 08:08:17 +00:00
SyntheticSections.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Writer.cpp [lld][WebAssembly] Fix handling of comdat functions in init array. 2019-07-17 18:43:36 +00:00
Writer.h [WebAssembly] Refactor synthetic sections and relocation processing. NFC. 2019-05-21 09:13:09 +00:00
WriterUtils.cpp [WebAssembly] Rename except_ref type to exnref 2019-07-15 22:49:25 +00:00
WriterUtils.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00