diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-15 19:07:09 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-15 19:07:09 +0100 |
| commit | d771c0a7a19a4d39e1541afa0bf69935daa5222e (patch) | |
| tree | 07231ef69618a74c0884d2198269afb966474cc4 /src | |
| parent | 6f3bbd5eaa61a93f96245bfec8d9429f4ea9f88e (diff) | |
| download | zig-d771c0a7a19a4d39e1541afa0bf69935daa5222e.tar.gz zig-d771c0a7a19a4d39e1541afa0bf69935daa5222e.zip | |
elf: create .got.plt unconditionally
Diffstat (limited to 'src')
| -rw-r--r-- | src/link/Elf.zig | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig index 5b0591875c..2a3c0dd79e 100644 --- a/src/link/Elf.zig +++ b/src/link/Elf.zig @@ -3394,6 +3394,14 @@ fn initSections(self: *Elf) !void { }); } + self.got_plt_section_index = try self.addSection(.{ + .name = ".got.plt", + .type = elf.SHT_PROGBITS, + .flags = elf.SHF_ALLOC | elf.SHF_WRITE, + .addralign = @alignOf(u64), + .offset = std.math.maxInt(u64), + }); + const needs_rela_dyn = blk: { if (self.got.flags.needs_rela or self.got.flags.needs_tlsld or self.zig_got.flags.needs_rela or self.copy_rel.symbols.items.len > 0) break :blk true; @@ -3424,13 +3432,6 @@ fn initSections(self: *Elf) !void { .addralign = 16, .offset = std.math.maxInt(u64), }); - self.got_plt_section_index = try self.addSection(.{ - .name = ".got.plt", - .type = elf.SHT_PROGBITS, - .flags = elf.SHF_ALLOC | elf.SHF_WRITE, - .addralign = @alignOf(u64), - .offset = std.math.maxInt(u64), - }); self.rela_plt_section_index = try self.addSection(.{ .name = ".rela.plt", .type = elf.SHT_RELA, |
