commit dc34ac2b9e283ac4ca6c07ed9f4e201f860639d0 (tree)
parent 5d8944edc1361aeb36a55d8435ef1feecf714958
Author: Jakub Konka <kubkon@jakubkonka.com>
Date: Fri, 5 Mar 2021 00:37:25 +0100
zld: fix incorrect offset calc for DICE
Diffstat:
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/link/MachO/Zld.zig b/src/link/MachO/Zld.zig
@@ -2787,13 +2787,12 @@ fn writeDataInCode(self: *Zld) !void {
.source_sect_id = object.text_section_index.?,
}) orelse continue;
- // TODO Currently assume that Dice will always be within the __TEXT,__text section.
try buf.ensureCapacity(
buf.items.len + object.data_in_code_entries.items.len * @sizeOf(macho.data_in_code_entry),
);
for (object.data_in_code_entries.items) |dice| {
const new_dice: macho.data_in_code_entry = .{
- .offset = text_sect.offset + target_mapping.offset + dice.offset - source_sect.offset,
+ .offset = text_sect.offset + target_mapping.offset + dice.offset,
.length = dice.length,
.kind = dice.kind,
};