From 14c79203c4f783002d8334fb7471b95b271fbc70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Sun, 1 Dec 2024 02:23:10 +0100 Subject: [PATCH 1/2] std.os.linux: Fix fadvise64 syscall selection for n32/x32. --- lib/std/os/linux.zig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index 7bd727e79f..e9a84d8062 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -2451,7 +2451,10 @@ pub fn fadvise(fd: fd_t, offset: i64, len: i64, advice: usize) usize { const length_halves = splitValue64(len); return syscall6( - .fadvise64_64, + switch (builtin.abi) { + .gnuabin32, .gnux32, .muslabin32, .muslx32 => .fadvise64, + else => .fadvise64_64, + }, @as(usize, @bitCast(@as(isize, fd))), offset_halves[0], offset_halves[1], From 17315109336a8ae048f98170f557b9abb79568db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Sun, 1 Dec 2024 02:15:51 +0100 Subject: [PATCH 2/2] test: Add x86_64-linux-(gnux32,muslx32) to module tests. --- test/tests.zig | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/test/tests.zig b/test/tests.zig index ac23bac754..e123dc1e2b 100644 --- a/test/tests.zig +++ b/test/tests.zig @@ -217,6 +217,14 @@ const test_targets = blk: { }, .link_libc = true, }, + .{ + .target = .{ + .cpu_arch = .x86_64, + .os_tag = .linux, + .abi = .gnux32, + }, + .link_libc = true, + }, .{ .target = .{ .cpu_arch = .x86_64, @@ -225,6 +233,14 @@ const test_targets = blk: { }, .link_libc = true, }, + .{ + .target = .{ + .cpu_arch = .x86_64, + .os_tag = .linux, + .abi = .muslx32, + }, + .link_libc = true, + }, .{ .target = .{ .cpu_arch = .x86_64,