diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-09-12 23:27:11 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2023-09-12 23:27:14 +0200 |
| commit | 1a6d12ea92eb9033aed686c88b53ff406ec2fbe7 (patch) | |
| tree | 00700d4647d1551641a3694e315bd9423d3f3687 /src/link/Elf/Object.zig | |
| parent | 9719fa7412371243aaac6f307f80d783c7ac50cb (diff) | |
| download | zig-1a6d12ea92eb9033aed686c88b53ff406ec2fbe7.tar.gz zig-1a6d12ea92eb9033aed686c88b53ff406ec2fbe7.zip | |
elf: clean up and unify symbol ref handling in relocs
Also, this lets us re-enable proper undefined symbols tracking.
Diffstat (limited to 'src/link/Elf/Object.zig')
| -rw-r--r-- | src/link/Elf/Object.zig | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/link/Elf/Object.zig b/src/link/Elf/Object.zig index 14892302a4..f095a5f99e 100644 --- a/src/link/Elf/Object.zig +++ b/src/link/Elf/Object.zig @@ -392,14 +392,14 @@ fn filterRelocs( return .{ .start = f_start, .len = f_len }; } -pub fn scanRelocs(self: *Object, elf_file: *Elf) !void { +pub fn scanRelocs(self: *Object, elf_file: *Elf, undefs: anytype) !void { for (self.atoms.items) |atom_index| { const atom = elf_file.atom(atom_index) orelse continue; if (!atom.alive) continue; const shdr = atom.inputShdr(elf_file); if (shdr.sh_flags & elf.SHF_ALLOC == 0) continue; if (shdr.sh_type == elf.SHT_NOBITS) continue; - try atom.scanRelocs(elf_file); + try atom.scanRelocs(elf_file, undefs); } for (self.cies.items) |cie| { |
