llvm-project/lld/wasm
Yuta Saito aa0c571a5f [WebAssembly] Add new relocation for location relative data
This `R_WASM_MEMORY_ADDR_SELFREL_I32` relocation represents an offset
between its relocating address and the symbol address. It's very similar
to `R_X86_64_PC32` but restricted to be used for only data segments.

```
S + A - P
```

A: Represents the addend used to compute the value of the relocatable
field.
P: Represents the place of the storage unit being relocated.
S: Represents the value of the symbol whose index resides in the
relocation entry.

Proposal: https://github.com/WebAssembly/tool-conventions/issues/162

Differential Revision: https://reviews.llvm.org/D96659
2021-03-08 11:34:10 -08:00
..
CMakeLists.txt [lld][WebAssembly] Add initial support for -Map/--print-map 2020-09-12 16:10:51 -07:00
Config.h [WebAssembly][lld] Preassign table number 0 to indirect function table for MVP inputs 2021-02-12 20:20:19 +01:00
Driver.cpp [lld][WebAssembly] -Bsymbolic creates indirect function table if needed 2021-03-04 09:28:21 +01:00
InputChunks.cpp [WebAssembly] Add new relocation for location relative data 2021-03-08 11:34:10 -08:00
InputChunks.h [lld][WebAssembly] Minor refactor in preparation for SHF_STRINGS supports. NFC. 2021-03-01 16:15:29 -08:00
InputElement.h [lld][WebAssembly] Common superclass for input globals/events/tables 2021-02-11 14:54:45 +01:00
InputFiles.cpp [WebAssembly] Add new relocation for location relative data 2021-03-08 11:34:10 -08:00
InputFiles.h [WebAssembly] Add new relocation for location relative data 2021-03-08 11:34:10 -08:00
LTO.cpp [LTO][wasm][NewPM] Allow using new pass manager for wasm LTO 2020-12-01 12:22:40 -08:00
LTO.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MapFile.cpp [lld][WebAssembly] Rename methods/members to match ELF backend. NFC. 2021-02-26 17:05:59 -08:00
MapFile.h [lld][WebAssembly] Add initial support for -Map/--print-map 2020-09-12 16:10:51 -07:00
MarkLive.cpp [lld][WebAssembly] Common superclass for input globals/events/tables 2021-02-11 14:54:45 +01: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] Consistent help text for `--save-temps` 2021-01-25 10:27:18 -08:00
OutputSections.cpp [lld][WebAssembly] Rename methods/members to match ELF backend. NFC. 2021-02-26 17:05:59 -08:00
OutputSections.h [lld][WebAssembly] Add initial support for -Map/--print-map 2020-09-12 16:10:51 -07:00
OutputSegment.h [lld][WebAssembly] Minor refactor in preparation for SHF_STRINGS supports. NFC. 2021-03-01 16:15:29 -08:00
Relocations.cpp [lld][WebAssembly] Ensure stub symbols always get address 0 2020-11-25 18:26:34 -08: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] -Bsymbolic creates indirect function table if needed 2021-03-04 09:28:21 +01:00
SymbolTable.h [lld][WebAssembly] -Bsymbolic creates indirect function table if needed 2021-03-04 09:28:21 +01:00
Symbols.cpp [lld][WebAssembly] Rename methods/members to match ELF backend. NFC. 2021-02-26 17:05:59 -08:00
Symbols.h [lld][WebAssembly] Rename methods/members to match ELF backend. NFC. 2021-02-26 17:05:59 -08:00
SyntheticSections.cpp [lld][WebAssembly] Allow element sections for nonzero table numbers 2021-03-05 11:52:28 +01:00
SyntheticSections.h [WebAssembly][lld] Preassign table number 0 to indirect function table for MVP inputs 2021-02-12 20:20:19 +01:00
Writer.cpp [lld][WebAssembly] -Bsymbolic creates indirect function table if needed 2021-03-04 09:28:21 +01:00
Writer.h [WebAssembly] Refactor synthetic sections and relocation processing. NFC. 2019-05-21 09:13:09 +00:00
WriterUtils.cpp [lld][WebAssembly] Common superclass for input globals/events/tables 2021-02-11 14:54:45 +01:00
WriterUtils.h [lld][WebAssembly] Common superclass for input globals/events/tables 2021-02-11 14:54:45 +01:00