aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.zig
diff options
context:
space:
mode:
authorJakub Konka <kubkon@jakubkonka.com>2024-08-15 10:05:41 +0200
committerJakub Konka <kubkon@jakubkonka.com>2024-08-15 10:05:41 +0200
commit8a0cb7002e6b8f7b50fdf7ee40311ce93fbef009 (patch)
treea3a0aa5bdd1c02cb4b8193000f1c3b1b9c6f1ae5 /src/codegen.zig
parent2e8351cc9e30c28a9415821ed99d664b76eb2062 (diff)
downloadzig-8a0cb7002e6b8f7b50fdf7ee40311ce93fbef009.tar.gz
zig-8a0cb7002e6b8f7b50fdf7ee40311ce93fbef009.zip
elf: introduce Symbol.flags.is_extern_ptr for refs potentially needing GOT
Diffstat (limited to 'src/codegen.zig')
-rw-r--r--src/codegen.zig3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/codegen.zig b/src/codegen.zig
index 679ee03c27..3df7ce37ab 100644
--- a/src/codegen.zig
+++ b/src/codegen.zig
@@ -898,9 +898,8 @@ fn genNavRef(
if (lf.cast(.elf)) |elf_file| {
const zo = elf_file.zigObjectPtr().?;
if (is_extern) {
- // TODO audit this
const sym_index = try elf_file.getGlobalSymbol(name.toSlice(ip), lib_name.toSlice(ip));
- zo.symbol(sym_index).flags.needs_got = true;
+ zo.symbol(sym_index).flags.is_extern_ptr = true;
return GenResult.mcv(.{ .load_symbol = sym_index });
}
const sym_index = try zo.getOrCreateMetadataForNav(elf_file, nav_index);