llvm-project/lld/wasm
Jacob Gravelle 92ed86d239 [lld][WebAssembly] Support for growable tables
Adds --growable-table flag to handle building wasm modules with tables
that can grow.

Wasm tables that we use to store function pointers. In order to add functions
to that table at runtime, we need to either preallocate space, or grow the table.
In order to specify a table with no maximum size, we need some flag to handle
that case, separately from a potential --max-table-size= flag.

Note that the number of elements in the table isn't knowable until link-time,
so it's unclear if we will want a --max-table-size= flag in the future.

llvm-svn: 370127
2019-08-27 22:58:21 +00:00
..
CMakeLists.txt [WebAssembly] Refactor synthetic sections and relocation processing. NFC. 2019-05-21 09:13:09 +00:00
Config.h [lld][WebAssembly] Support for growable tables 2019-08-27 22:58:21 +00:00
Driver.cpp [lld][WebAssembly] Support for growable tables 2019-08-27 22:58:21 +00:00
InputChunks.cpp [WebAssembly][lld] Fix crash when applying relocations to debug sections 2019-08-20 18:39:24 +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 [WebAssembly][lld] Fix crash when applying relocations to debug sections 2019-08-20 18:39:24 +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 [LLD] Migrate llvm::make_unique to std::make_unique 2019-08-14 22:28:17 +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 Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Options.td [lld][WebAssembly] Support for growable tables 2019-08-27 22:58:21 +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 [lld][WebAssembly] Allow linking of pic code into static binaries 2019-08-13 17:02:02 +00:00
Relocations.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
SymbolTable.cpp [lld][WebAssembly] Add optional symbols after input file handling 2019-08-08 16:58:36 +00:00
SymbolTable.h [lld][WebAssembly] Add optional symbols after input file handling 2019-08-08 16:58:36 +00:00
Symbols.cpp [lld][WebAssembly] Allow linking of pic code into static binaries 2019-08-13 17:02:02 +00:00
Symbols.h [lld][WebAssembly] Allow linking of pic code into static binaries 2019-08-13 17:02:02 +00:00
SyntheticSections.cpp [lld][WebAssembly] Support for growable tables 2019-08-27 22:58:21 +00:00
SyntheticSections.h [lld][WebAssembly] Store table base in config rather than passing it around. NFC. 2019-08-27 04:19:34 +00:00
Writer.cpp [lld][WebAssembly] Store table base in config rather than passing it around. NFC. 2019-08-27 04:19:34 +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