aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJakub Konka <kubkon@jakubkonka.com>2023-10-03 22:28:45 +0200
committerJakub Konka <kubkon@jakubkonka.com>2023-10-16 19:33:04 +0200
commit66f34b15e8573d669ef99d47337162f2aa91d602 (patch)
tree8c8d4773cbd5058623069c2b7fb729c4712747da /src
parent2c2bc66ce160989734ba6772fa75a870795d9356 (diff)
downloadzig-66f34b15e8573d669ef99d47337162f2aa91d602.tar.gz
zig-66f34b15e8573d669ef99d47337162f2aa91d602.zip
elf: add symbols to .got section directly
Diffstat (limited to 'src')
-rw-r--r--src/link/Elf.zig4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
index 4b63efe2c9..2266bad251 100644
--- a/src/link/Elf.zig
+++ b/src/link/Elf.zig
@@ -1762,8 +1762,8 @@ fn scanRelocs(self: *Elf) !void {
for (self.symbols.items, 0..) |*sym, sym_index| {
if (sym.flags.needs_got) {
log.debug("'{s}' needs GOT", .{sym.name(self)});
- // TODO how can we tell we need to write it again, aka the entry is dirty?
- _ = try sym.getOrCreateGotEntry(@intCast(sym_index), self);
+ _ = try self.got.addGotSymbol(@intCast(sym_index), self);
+ sym.flags.has_got = true;
}
}
}