| ... | @@ -113,7 +113,7 @@ pub fn relocate(phdrs: []elf.Phdr) void { | ... | @@ -113,7 +113,7 @@ pub fn relocate(phdrs: []elf.Phdr) void { |
| 113 | const rela = std.mem.bytesAsSlice(elf.Rela, @as([*]u8, @ptrFromInt(rela_addr))[0..rela_size]); | 113 | const rela = std.mem.bytesAsSlice(elf.Rela, @as([*]u8, @ptrFromInt(rela_addr))[0..rela_size]); |
| 114 | for (rela) |r| { | 114 | for (rela) |r| { |
| 115 | if (r.r_type() != R_RELATIVE) continue; | 115 | if (r.r_type() != R_RELATIVE) continue; |
| 116 | @as(*usize, @ptrFromInt(base_addr + r.r_offset)).* += base_addr + @as(usize, @bitCast(r.r_addend)); | 116 | @as(*usize, @ptrFromInt(base_addr + r.r_offset)).* = base_addr + @as(usize, @bitCast(r.r_addend)); |
| 117 | } | 117 | } |
| 118 | } | 118 | } |
| 119 | } | 119 | } |