diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-10-20 20:57:56 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-10-22 07:59:24 +0200 |
| commit | f8cbe29a17e17edf6679feb0d582f59ed4be7d7f (patch) | |
| tree | c5a47838be79bb0df426ef6f3997c0e0ec0315bb /src | |
| parent | 93cc5496e1cca17ac8bc766bbb6aaec96ebb3588 (diff) | |
| download | zig-f8cbe29a17e17edf6679feb0d582f59ed4be7d7f.tar.gz zig-f8cbe29a17e17edf6679feb0d582f59ed4be7d7f.zip | |
macho: fix incorrect lookup of symbols when calculating subtractors
Diffstat (limited to 'src')
| -rw-r--r-- | src/link/MachO/ZldAtom.zig | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/link/MachO/ZldAtom.zig b/src/link/MachO/ZldAtom.zig index ea173b73ad..270dd2d4a7 100644 --- 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); |
