diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-09-14 01:45:23 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-14 01:45:23 +0200 |
| commit | 8fb4a4efbabbe3fe98521201eac41feee5a9a50a (patch) | |
| tree | 398abef45faa8065836c6a5f8cad167ae8adb4ed /src/link/Elf/ZigModule.zig | |
| parent | 223f62acbd32c04db3169906f33869f43e5258f7 (diff) | |
| parent | 59a586a8785b8aea417824e5b6b8d6b8a1b2b695 (diff) | |
| download | zig-8fb4a4efbabbe3fe98521201eac41feee5a9a50a.tar.gz zig-8fb4a4efbabbe3fe98521201eac41feee5a9a50a.zip | |
Merge pull request #17146 from ziglang/elf-linker
elf: upstream zld/ELF functionality, part 2
Diffstat (limited to 'src/link/Elf/ZigModule.zig')
| -rw-r--r-- | src/link/Elf/ZigModule.zig | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/link/Elf/ZigModule.zig b/src/link/Elf/ZigModule.zig index 46a382abf9..98496a2c38 100644 --- a/src/link/Elf/ZigModule.zig +++ b/src/link/Elf/ZigModule.zig @@ -148,6 +148,15 @@ pub fn scanRelocs(self: *ZigModule, elf_file: *Elf, undefs: anytype) !void { } } +pub fn resetGlobals(self: *ZigModule, elf_file: *Elf) void { + for (self.globals()) |index| { + const global = elf_file.symbol(index); + const off = global.name_offset; + global.* = .{}; + global.name_offset = off; + } +} + pub fn updateSymtabSize(self: *ZigModule, elf_file: *Elf) void { for (self.locals()) |local_index| { const local = elf_file.symbol(local_index); |
