motiejus/zig

fork of https://codeberg.org/ziglang/zig
git clone https://git.jakstys.lt/motiejus/zig.git
Log | Tree | Refs | README | LICENSE

commit f8cbe29a17e17edf6679feb0d582f59ed4be7d7f (tree)
parent 93cc5496e1cca17ac8bc766bbb6aaec96ebb3588
Author: Jakub Konka <kubkon@jakubkonka.com>
Date:   Thu, 20 Oct 2022 20:57:56 +0200

macho: fix incorrect lookup of symbols when calculating subtractors

Diffstat:
Msrc/link/MachO/ZldAtom.zig | 6++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/link/MachO/ZldAtom.zig b/src/link/MachO/ZldAtom.zig @@ -498,8 +498,9 @@ fn resolveRelocsArm64( atom.file, }); + const sym_index = reverse_lookup[rel.r_symbolnum]; const sym_loc = SymbolWithLoc{ - .sym_index = rel.r_symbolnum, + .sym_index = sym_index, .file = atom.file, }; const sym = zld.getSymbol(sym_loc); @@ -783,8 +784,9 @@ fn resolveRelocsX86( atom.file, }); + const sym_index = reverse_lookup[rel.r_symbolnum]; const sym_loc = SymbolWithLoc{ - .sym_index = rel.r_symbolnum, + .sym_index = sym_index, .file = atom.file, }; const sym = zld.getSymbol(sym_loc);