authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2022-12-27 17:04:57+01:00
committergravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2022-12-27 17:04:57+01:00
logc0c5acf074a9eba01e892184489ac3e837d739bc
tree827ea753638b8765dcb57809725271c0fa622813
parent8d29c84d007849d82268f80c902742a7a19ba400

macho+zld: fix 32bit build


2 files changed, 8 insertions(+), 8 deletions(-)

src/link/MachO.zig+3-3
......@@ -3616,7 +3616,7 @@ fn writeStrtab(self: *MachO) !void {
36163616
36173617 log.debug("writing string table from 0x{x} to 0x{x}", .{ offset, offset + needed_size_aligned });
36183618
3619 const buffer = try gpa.alloc(u8, needed_size_aligned);
3619 const buffer = try gpa.alloc(u8, math.cast(usize, needed_size_aligned) orelse return error.Overflow);
36203620 defer gpa.free(buffer);
36213621 mem.set(u8, buffer, 0);
36223622 mem.copy(u8, buffer, self.strtab.buffer.items);
......@@ -3653,7 +3653,7 @@ fn writeDysymtab(self: *MachO, ctx: SymtabCtx) !void {
36533653
36543654 var buf = std.ArrayList(u8).init(gpa);
36553655 defer buf.deinit();
3656 try buf.ensureTotalCapacity(needed_size_aligned);
3656 try buf.ensureTotalCapacity(math.cast(usize, needed_size_aligned) orelse return error.Overflow);
36573657 const writer = buf.writer();
36583658
36593659 if (self.stubs_section_index) |sect_id| {
......@@ -3692,7 +3692,7 @@ fn writeDysymtab(self: *MachO, ctx: SymtabCtx) !void {
36923692 }
36933693 }
36943694
3695 const padding = needed_size_aligned - needed_size;
3695 const padding = math.cast(usize, needed_size_aligned - needed_size) orelse return error.Overflow;
36963696 if (padding > 0) {
36973697 buf.appendNTimesAssumeCapacity(0, padding);
36983698 }
src/link/MachO/zld.zig+5-5
......@@ -2416,7 +2416,7 @@ pub const Zld = struct {
24162416 assert(mem.isAlignedGeneric(u64, offset, @alignOf(u64)));
24172417 const needed_size = buffer.items.len;
24182418 const needed_size_aligned = mem.alignForwardGeneric(u64, needed_size, @alignOf(u64));
2419 const padding = needed_size_aligned - needed_size;
2419 const padding = math.cast(usize, needed_size_aligned - needed_size) orelse return error.Overflow;
24202420 if (padding > 0) {
24212421 try buffer.ensureUnusedCapacity(padding);
24222422 buffer.appendNTimesAssumeCapacity(0, padding);
......@@ -2499,7 +2499,7 @@ pub const Zld = struct {
24992499 const needed_size_aligned = mem.alignForwardGeneric(u64, needed_size, @alignOf(u64));
25002500 seg.filesize = offset + needed_size_aligned - seg.fileoff;
25012501
2502 const buffer = try self.gpa.alloc(u8, needed_size_aligned);
2502 const buffer = try self.gpa.alloc(u8, math.cast(usize, needed_size_aligned) orelse return error.Overflow);
25032503 defer self.gpa.free(buffer);
25042504 mem.set(u8, buffer, 0);
25052505 mem.copy(u8, buffer, mem.sliceAsBytes(out_dice.items));
......@@ -2621,7 +2621,7 @@ pub const Zld = struct {
26212621
26222622 log.debug("writing string table from 0x{x} to 0x{x}", .{ offset, offset + needed_size_aligned });
26232623
2624 const buffer = try self.gpa.alloc(u8, needed_size_aligned);
2624 const buffer = try self.gpa.alloc(u8, math.cast(usize, needed_size_aligned) orelse return error.Overflow);
26252625 defer self.gpa.free(buffer);
26262626 mem.set(u8, buffer, 0);
26272627 mem.copy(u8, buffer, self.strtab.buffer.items);
......@@ -2658,7 +2658,7 @@ pub const Zld = struct {
26582658
26592659 var buf = std.ArrayList(u8).init(gpa);
26602660 defer buf.deinit();
2661 try buf.ensureTotalCapacityPrecise(needed_size_aligned);
2661 try buf.ensureTotalCapacityPrecise(math.cast(usize, needed_size_aligned) orelse return error.Overflow);
26622662 const writer = buf.writer();
26632663
26642664 if (self.getSectionByName("__TEXT", "__stubs")) |sect_id| {
......@@ -2694,7 +2694,7 @@ pub const Zld = struct {
26942694 }
26952695 }
26962696
2697 const padding = needed_size_aligned - needed_size;
2697 const padding = math.cast(usize, needed_size_aligned - needed_size) orelse return error.Overflow;
26982698 if (padding > 0) {
26992699 buf.appendNTimesAssumeCapacity(0, padding);
27002700 }