diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-10-15 22:06:18 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2023-10-16 19:33:06 +0200 |
| commit | 6993b3e23e3b8f45f66902ebe23980aa155b343c (patch) | |
| tree | adb1ee6b64e7a7f9aeef458f5c133c8c899b3d67 /src/codegen.zig | |
| parent | d3b1c903dddee56b0f2ab06a00848b1b0017f062 (diff) | |
| download | zig-6993b3e23e3b8f45f66902ebe23980aa155b343c.tar.gz zig-6993b3e23e3b8f45f66902ebe23980aa155b343c.zip | |
codegen: refactor .actual_got into .extern_got
Diffstat (limited to 'src/codegen.zig')
| -rw-r--r-- | src/codegen.zig | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/codegen.zig b/src/codegen.zig index 54ed9c0cf5..24269f38ba 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -793,12 +793,13 @@ fn lowerDeclRef( /// Helper struct to denote that the value is in memory but requires a linker relocation fixup: /// * got - the value is referenced indirectly via GOT entry index (the linker emits a got-type reloc) +/// * extern_got - pointer to extern variable referenced via GOT /// * direct - the value is referenced directly via symbol index index (the linker emits a displacement reloc) /// * import - the value is referenced indirectly via import entry index (the linker emits an import-type reloc) pub const LinkerLoad = struct { type: enum { got, - actual_got, + extern_got, direct, import, }, @@ -828,8 +829,8 @@ pub const GenResult = union(enum) { load_got: u32, /// Direct by-address reference to memory location. memory: u64, - /// TODO LOL Jakub, the king of naming... - load_actual_got: u32, + /// Pointer to extern variable via GOT. + load_extern_got: u32, }; fn mcv(val: MCValue) GenResult { @@ -898,7 +899,7 @@ fn genDeclRef( mod.intern_pool.stringToSliceUnwrap(ov.lib_name) else null; - return GenResult.mcv(.{ .load_actual_got = try elf_file.getGlobalSymbol(name, lib_name) }); + return GenResult.mcv(.{ .load_extern_got = try elf_file.getGlobalSymbol(name, lib_name) }); } const sym_index = try elf_file.getOrCreateMetadataForDecl(decl_index); const sym = elf_file.symbol(sym_index); |
