From 594a6d5665fba5696903043bbcb76a8ce8d28d0b Mon Sep 17 00:00:00 2001 From: Matthew Lugg Date: Thu, 13 Aug 2026 21:10:43 +0100 Subject: [PATCH] Elf2: fix endianness bug in GOT --- src/link/Elf2.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/link/Elf2.zig b/src/link/Elf2.zig index dd9c47c9d9f468708de660175cc8f616dfc0691f..1751dae2b05978ffe6673547db04769174d10466 100644 --- a/src/link/Elf2.zig +++ b/src/link/Elf2.zig @@ -7045,7 +7045,7 @@ fn updateGotEntry(elf: *Elf, got_index: usize) void { const entry_ptr: *class.ElfN().Addr = @ptrCast(@alignCast( elf.shndx.got.get(elf).ni.slice(&elf.mf)[offset..][0..addr_size], )); - entry_ptr.* = switch (entry_value) { + elf.targetStore(entry_ptr, switch (entry_value) { .unsigned => |x| @intCast(x), .signed => |x| switch (class) { .NONE, _ => comptime unreachable, @@ -7053,7 +7053,7 @@ fn updateGotEntry(elf: *Elf, got_index: usize) void { .@"64" => @bitCast(x), }, .reloc => 0, - }; + }); break :got_entry_addr elf.targetLoad(&got_shdr.addr) + offset; }, }; -- 2.54.0