aboutsummaryrefslogtreecommitdiff
path: root/src/link
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-12-21 16:40:30 +0200
committerVeikka Tuominen <git@vexu.eu>2022-12-27 15:13:14 +0200
commit622311fb9ac7ee6d93dcb8cda4b608751f7e092a (patch)
treeef54a9f6bc53919a4ef4f01aae2d9e3573aad871 /src/link
parent54160e7f6aecb4628df633ceaef4c6d956429a3d (diff)
downloadzig-622311fb9ac7ee6d93dcb8cda4b608751f7e092a.tar.gz
zig-622311fb9ac7ee6d93dcb8cda4b608751f7e092a.zip
update uses of overflow arithmetic builtins
Diffstat (limited to 'src/link')
-rw-r--r--src/link/Coff.zig4
-rw-r--r--src/link/Dwarf.zig4
-rw-r--r--src/link/Elf.zig4
-rw-r--r--src/link/MachO.zig4
4 files changed, 4 insertions, 12 deletions
diff --git a/src/link/Coff.zig b/src/link/Coff.zig
index aa94704c54..232342dd7f 100644
--- a/src/link/Coff.zig
+++ b/src/link/Coff.zig
@@ -1860,9 +1860,7 @@ fn writeHeader(self: *Coff) !void {
}
pub fn padToIdeal(actual_size: anytype) @TypeOf(actual_size) {
- // TODO https://github.com/ziglang/zig/issues/1284
- return math.add(@TypeOf(actual_size), actual_size, actual_size / ideal_factor) catch
- math.maxInt(@TypeOf(actual_size));
+ return actual_size +| (actual_size / ideal_factor);
}
fn detectAllocCollision(self: *Coff, start: u32, size: u32) ?u32 {
diff --git a/src/link/Dwarf.zig b/src/link/Dwarf.zig
index 6cc3a7d68f..1b65bbb04b 100644
--- a/src/link/Dwarf.zig
+++ b/src/link/Dwarf.zig
@@ -2445,9 +2445,7 @@ fn makeString(self: *Dwarf, bytes: []const u8) !u32 {
}
fn padToIdeal(actual_size: anytype) @TypeOf(actual_size) {
- // TODO https://github.com/ziglang/zig/issues/1284
- return std.math.add(@TypeOf(actual_size), actual_size, actual_size / ideal_factor) catch
- std.math.maxInt(@TypeOf(actual_size));
+ return actual_size +| (actual_size / ideal_factor);
}
pub fn flushModule(self: *Dwarf, module: *Module) !void {
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
index 30c88fe9b2..466442cd77 100644
--- a/src/link/Elf.zig
+++ b/src/link/Elf.zig
@@ -3032,9 +3032,7 @@ fn getLDMOption(target: std.Target) ?[]const u8 {
}
fn padToIdeal(actual_size: anytype) @TypeOf(actual_size) {
- // TODO https://github.com/ziglang/zig/issues/1284
- return std.math.add(@TypeOf(actual_size), actual_size, actual_size / ideal_factor) catch
- std.math.maxInt(@TypeOf(actual_size));
+ return actual_size +| (actual_size / ideal_factor);
}
// Provide a blueprint of csu (c-runtime startup) objects for supported
diff --git a/src/link/MachO.zig b/src/link/MachO.zig
index 733f2a6c2a..852efaf286 100644
--- a/src/link/MachO.zig
+++ b/src/link/MachO.zig
@@ -3772,9 +3772,7 @@ fn writeHeader(self: *MachO, ncmds: u32, sizeofcmds: u32) !void {
}
pub fn padToIdeal(actual_size: anytype) @TypeOf(actual_size) {
- // TODO https://github.com/ziglang/zig/issues/1284
- return std.math.add(@TypeOf(actual_size), actual_size, actual_size / ideal_factor) catch
- std.math.maxInt(@TypeOf(actual_size));
+ return actual_size +| (actual_size / ideal_factor);
}
fn detectAllocCollision(self: *MachO, start: u64, size: u64) ?u64 {