commit 35df61dec4f7b535a3f0cb8c9e3d4193f84d8835 (tree)
parent ea3be3d4fe2c4f0aae29c2889c2079fb18133726
Author: Alex Rønne Petersen <alex@alexrp.com>
Date: Thu, 4 Jun 2026 22:58:38 +0200
Merge pull request 'add `microblaze(el)-linux` and `sh(eb)-linux` arch bits' (#35625) from alexrp/zig:microblaze-superh into master
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35625
Diffstat:
8 files changed, 2163 insertions(+), 35 deletions(-)
diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig
@@ -1264,7 +1264,7 @@ const LinuxThreadImpl = struct {
\\ ori r12, r0, 91 # SYS_munmap
\\ brki r14, 0x8
\\ ori r12, r0, 1 # SYS_exit
- \\ or r5, r0, r0
+ \\ ori r5, r0, 0
\\ brki r14, 0x8
:
: [ptr] "{r5}" (@intFromPtr(self.mapped.ptr)),
diff --git a/lib/std/os.zig b/lib/std/os.zig
@@ -18,12 +18,6 @@ pub fn targetRequiresLibC(target: *const std.Target) bool {
// https://codeberg.org/ziglang/zig/issues/30943
.hppa,
.hppa64,
- // https://codeberg.org/ziglang/zig/issues/30944
- .microblaze,
- .microblazeel,
- // https://codeberg.org/ziglang/zig/issues/30946
- .sh,
- .sheb,
=> true,
else => false,
},
diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig
@@ -40,6 +40,7 @@ const arch_bits = switch (native_arch) {
.loongarch32 => @import("linux/loongarch32.zig"),
.loongarch64 => @import("linux/loongarch64.zig"),
.m68k => @import("linux/m68k.zig"),
+ .microblaze, .microblazeel => @import("linux/microblaze.zig"),
.mips, .mipsel => @import("linux/mips.zig"),
.mips64, .mips64el => switch (builtin.abi) {
.gnuabin32, .muslabin32 => @import("linux/mipsn32.zig"),
@@ -51,6 +52,7 @@ const arch_bits = switch (native_arch) {
.riscv32 => @import("linux/riscv32.zig"),
.riscv64 => @import("linux/riscv64.zig"),
.s390x => @import("linux/s390x.zig"),
+ .sh, .sheb => @import("linux/sh.zig"),
.sparc => @import("linux/sparc.zig"),
.sparc64 => @import("linux/sparc64.zig"),
.x86 => @import("linux/x86.zig"),
@@ -133,9 +135,12 @@ pub const SYS = switch (native_arch) {
.arm, .armeb, .thumb, .thumbeb => syscalls.Arm,
.csky => syscalls.CSky,
.hexagon => syscalls.Hexagon,
+ .hppa => syscalls.Hppa,
+ .hppa64 => syscalls.Hppa64,
.loongarch32 => syscalls.LoongArch32,
.loongarch64 => syscalls.LoongArch64,
.m68k => syscalls.M68k,
+ .microblaze, .microblazeel => syscalls.Microblaze,
.mips, .mipsel => syscalls.MipsO32,
.mips64, .mips64el => switch (builtin.abi) {
.gnuabin32, .muslabin32 => syscalls.MipsN32,
@@ -147,6 +152,7 @@ pub const SYS = switch (native_arch) {
.riscv32 => syscalls.RiscV32,
.riscv64 => syscalls.RiscV64,
.s390x => syscalls.S390x,
+ .sh, .sheb => syscalls.Sh,
.sparc => syscalls.Sparc,
.sparc64 => syscalls.Sparc64,
.x86 => syscalls.X86,
@@ -293,8 +299,12 @@ pub const MAP = switch (native_arch) {
.csky,
.hexagon,
.m68k,
+ .microblaze,
+ .microblazeel,
.or1k,
.s390x,
+ .sh,
+ .sheb,
=> packed struct(u32) {
TYPE: MAP_TYPE,
FIXED: bool = false,
@@ -523,8 +533,12 @@ pub const O = switch (native_arch) {
.arceb,
.csky,
.hexagon,
+ .microblaze,
+ .microblazeel,
.or1k,
.s390x,
+ .sh,
+ .sheb,
.xtensa,
.xtensaeb,
=> packed struct(u32) {
@@ -6978,12 +6992,16 @@ pub const MINSIGSTKSZ = switch (native_arch) {
.mipsel,
.mips64,
.mips64el,
+ .microblaze,
+ .microblazeel,
.or1k,
.powerpc,
.powerpcle,
.riscv32,
.riscv64,
.s390x,
+ .sh,
+ .sheb,
.thumb,
.thumbeb,
.x86,
@@ -7016,12 +7034,16 @@ pub const SIGSTKSZ = switch (native_arch) {
.mipsel,
.mips64,
.mips64el,
+ .microblaze,
+ .microblazeel,
.or1k,
.powerpc,
.powerpcle,
.riscv32,
.riscv64,
.s390x,
+ .sh,
+ .sheb,
.thumb,
.thumbeb,
.x86,
@@ -10719,6 +10741,7 @@ pub const AUDIT = struct {
.loongarch32 => .LOONGARCH32,
.loongarch64 => .LOONGARCH64,
.m68k => .M68K,
+ .microblaze, .microblazeel => .MICROBLAZE,
.mips => .MIPS,
.mipsel => .MIPSEL,
.mips64 => switch (native_abi) {
@@ -10735,9 +10758,11 @@ pub const AUDIT = struct {
.powerpc64le => .PPC64LE,
.riscv32 => .RISCV32,
.riscv64 => .RISCV64,
+ .s390x => .S390X,
+ .sh => .SHEL,
+ .sheb => .SH,
.sparc => .SPARC,
.sparc64 => .SPARC64,
- .s390x => .S390X,
.x86 => .I386,
.x86_64 => .X86_64,
.xtensa => .XTENSA,
diff --git a/lib/std/os/linux/microblaze.zig b/lib/std/os/linux/microblaze.zig
@@ -0,0 +1,170 @@
+const builtin = @import("builtin");
+const std = @import("../../std.zig");
+const SYS = std.os.linux.SYS;
+
+pub const syscall_arg_t = u32;
+
+pub fn syscall0(
+ number: SYS,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall1(
+ number: SYS,
+ arg1: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall2(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ [arg2] "{r6}" (arg2),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall3(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ [arg2] "{r6}" (arg2),
+ [arg3] "{r7}" (arg3),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall4(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ [arg2] "{r6}" (arg2),
+ [arg3] "{r7}" (arg3),
+ [arg4] "{r8}" (arg4),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall5(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+ arg5: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ [arg2] "{r6}" (arg2),
+ [arg3] "{r7}" (arg3),
+ [arg4] "{r8}" (arg4),
+ [arg5] "{r9}" (arg5),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn syscall6(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+ arg5: syscall_arg_t,
+ arg6: syscall_arg_t,
+) u32 {
+ return asm volatile ("brki r14, 0x8"
+ : [ret] "={r3}" (-> u32),
+ : [number] "{r12}" (@intFromEnum(number)),
+ [arg1] "{r5}" (arg1),
+ [arg2] "{r6}" (arg2),
+ [arg3] "{r7}" (arg3),
+ [arg4] "{r8}" (arg4),
+ [arg5] "{r9}" (arg5),
+ [arg6] "{r10}" (arg6),
+ : .{ .r4 = true, .memory = true });
+}
+
+pub fn clone() callconv(.naked) u32 {
+ // __clone(func, stack, flags, arg, ptid, tls, ctid)
+ // r5, r6, r7, r8, r9, r10, +28
+ //
+ // syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+ // r12 r5, r6, r8, r9, r10
+ asm volatile (
+ \\ andi r6, r6, -4
+ \\
+ \\ addi r6, r6, -8
+ \\ swi r5, r6, 0
+ \\ swi r8, r6, 4
+ \\
+ \\ ori r12, r0, 120 # SYS_clone
+ \\ ori r5, r7, 0
+ \\ ori r7, r0, 0 # stack size
+ \\ ori r8, r9, 0
+ \\ lwi r9, r1, 28
+ \\ brki r14, 0x8
+ \\ beqi r3, 1f
+ \\
+ \\ // parent
+ \\ rtsd r15, 8
+ \\ nop
+ \\
+ \\ // child
+ \\1:
+ \\ ori r15, r0, 0
+ \\ ori r19, r0, 0
+ \\
+ \\ lwi r3, r1, 0
+ \\ lwi r5, r1, 4
+ \\ brald r15, r3
+ \\ nop
+ \\
+ \\ ori r12, r0, 1 # SYS_exit
+ \\ brki r14, 0x8
+ );
+}
+
+pub fn restore() callconv(.naked) noreturn {
+ asm volatile (
+ \\ brki r14, 0x8
+ :
+ : [number] "{r7}" (@intFromEnum(SYS.sigreturn)),
+ );
+}
+
+pub fn restore_rt() callconv(.naked) noreturn {
+ asm volatile (
+ \\ brki r14, 0x8
+ :
+ : [number] "{r7}" (@intFromEnum(SYS.rt_sigreturn)),
+ );
+}
+
+pub const time_t = i32;
+
+pub const VDSO = void;
diff --git a/lib/std/os/linux/sh.zig b/lib/std/os/linux/sh.zig
@@ -0,0 +1,239 @@
+const builtin = @import("builtin");
+const std = @import("../../std.zig");
+const SYS = std.os.linux.SYS;
+
+pub const syscall_arg_t = u32;
+
+pub fn syscall0(
+ number: SYS,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ : .{ .memory = true });
+}
+
+pub fn syscall1(
+ number: SYS,
+ arg1: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ : .{ .memory = true });
+}
+
+pub fn syscall2(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ [arg2] "{r5}" (arg2),
+ : .{ .memory = true });
+}
+
+pub fn syscall3(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ [arg2] "{r5}" (arg2),
+ [arg3] "{r6}" (arg3),
+ : .{ .memory = true });
+}
+
+pub fn syscall4(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ [arg2] "{r5}" (arg2),
+ [arg3] "{r6}" (arg3),
+ [arg4] "{r7}" (arg4),
+ : .{ .memory = true });
+}
+
+pub fn syscall5(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+ arg5: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ [arg2] "{r5}" (arg2),
+ [arg3] "{r6}" (arg3),
+ [arg4] "{r7}" (arg4),
+ [arg5] "{r0}" (arg5),
+ : .{ .memory = true });
+}
+
+pub fn syscall6(
+ number: SYS,
+ arg1: syscall_arg_t,
+ arg2: syscall_arg_t,
+ arg3: syscall_arg_t,
+ arg4: syscall_arg_t,
+ arg5: syscall_arg_t,
+ arg6: syscall_arg_t,
+) u32 {
+ return asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ : [ret] "={r0}" (-> u32),
+ : [number] "{r3}" (@intFromEnum(number)),
+ [arg1] "{r4}" (arg1),
+ [arg2] "{r5}" (arg2),
+ [arg3] "{r6}" (arg3),
+ [arg4] "{r7}" (arg4),
+ [arg5] "{r0}" (arg5),
+ [arg6] "{r1}" (arg6),
+ : .{ .memory = true });
+}
+
+pub fn clone() callconv(.naked) u32 {
+ // __clone(func, stack, flags, arg, ptid, tls, ctid)
+ // r4, r5, r6, r7, +0, +4, +8
+ //
+ // syscall(SYS_clone, flags, stack, ptid, ctid, tls)
+ // r3 r4, r5, r6, r7, r0
+ asm volatile (
+ \\ mov #-4, r0
+ \\ and r0, r5
+ \\
+ \\ mov r4, r1
+ \\ mov r7, r2
+ \\
+ \\ mov #120, r3 ! SYS_clone
+ \\ mov r6, r4
+ \\ mov.l @r15, r6
+ \\ mov.l @(r15, 8), r7
+ \\ mov.l @(r15, 4), r0
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\
+ \\ cmp/eq #0, r0
+ \\ bt 1f
+ \\
+ \\ // parent
+ \\ rts
+ \\ nop
+ \\
+ \\ // child
+ \\1:
+ );
+ if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile (
+ \\ .cfi_undefined pr
+ );
+ asm volatile (
+ \\ mov #0, r0
+ \\ lds r0, pr
+ \\ mov r0, r14
+ \\
+ \\ mov r2, r4
+ \\ jsr @r1
+ \\ nop
+ \\
+ \\ mov #1, r3 ! SYS_exit
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ );
+}
+
+pub fn restore() callconv(.naked) noreturn {
+ asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ :
+ : [number] "{r3}" (@intFromEnum(SYS.sigreturn)),
+ );
+}
+
+pub fn restore_rt() callconv(.naked) noreturn {
+ asm volatile (
+ \\ trapa #31
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ \\ or r0, r0
+ :
+ : [number] "{r3}" (@intFromEnum(SYS.rt_sigreturn)),
+ );
+}
+
+pub const time_t = i32;
+
+pub const VDSO = void;
diff --git a/lib/std/os/linux/syscalls.zig b/lib/std/os/linux/syscalls.zig
@@ -728,7 +728,7 @@ pub const X64 = enum(usize) {
mknodat = 259,
fchownat = 260,
futimesat = 261,
- fstatat64 = 262,
+ newfstatat = 262,
unlinkat = 263,
renameat = 264,
linkat = 265,
@@ -1083,7 +1083,7 @@ pub const X32 = enum(usize) {
mknodat = 1073742083,
fchownat = 1073742084,
futimesat = 1073742085,
- fstatat64 = 1073742086,
+ newfstatat = 1073742086,
unlinkat = 1073742087,
renameat = 1073742088,
linkat = 1073742089,
@@ -3653,7 +3653,7 @@ pub const MipsN64 = enum(usize) {
mknodat = 5249,
fchownat = 5250,
futimesat = 5251,
- fstatat64 = 5252,
+ newfstatat = 5252,
unlinkat = 5253,
renameat = 5254,
linkat = 5255,
@@ -4033,7 +4033,7 @@ pub const MipsN32 = enum(usize) {
mknodat = 6253,
fchownat = 6254,
futimesat = 6255,
- fstatat64 = 6256,
+ newfstatat = 6256,
unlinkat = 6257,
renameat = 6258,
linkat = 6259,
@@ -4486,7 +4486,7 @@ pub const PowerPC = enum(usize) {
signalfd = 305,
timerfd_create = 306,
eventfd = 307,
- sync_file_range = 308,
+ sync_file_range2 = 308,
fallocate = 309,
subpage_prot = 310,
timerfd_settime = 311,
@@ -4915,7 +4915,7 @@ pub const PowerPC64 = enum(usize) {
mknodat = 288,
fchownat = 289,
futimesat = 290,
- fstatat64 = 291,
+ newfstatat = 291,
unlinkat = 292,
renameat = 293,
linkat = 294,
@@ -4932,7 +4932,7 @@ pub const PowerPC64 = enum(usize) {
signalfd = 305,
timerfd_create = 306,
eventfd = 307,
- sync_file_range = 308,
+ sync_file_range2 = 308,
fallocate = 309,
subpage_prot = 310,
timerfd_settime = 311,
@@ -5299,7 +5299,7 @@ pub const S390x = enum(usize) {
mknodat = 290,
fchownat = 291,
futimesat = 292,
- fstatat64 = 293,
+ newfstatat = 293,
unlinkat = 294,
renameat = 295,
linkat = 296,
@@ -5755,7 +5755,7 @@ pub const Xtensa = enum(usize) {
process_vm_writev = 323,
name_to_handle_at = 324,
open_by_handle_at = 325,
- sync_file_range = 326,
+ sync_file_range2 = 326,
perf_event_open = 327,
rt_tgsigqueueinfo = 328,
clock_adjtime = 329,
@@ -6433,7 +6433,7 @@ pub const Arm64 = enum(usize) {
splice = 76,
tee = 77,
readlinkat = 78,
- fstatat64 = 79,
+ newfstatat = 79,
fstat = 80,
sync = 81,
fsync = 82,
@@ -7083,7 +7083,7 @@ pub const RiscV64 = enum(usize) {
splice = 76,
tee = 77,
readlinkat = 78,
- fstatat64 = 79,
+ newfstatat = 79,
fstat = 80,
sync = 81,
fsync = 82,
@@ -7732,7 +7732,7 @@ pub const LoongArch64 = enum(usize) {
splice = 76,
tee = 77,
readlinkat = 78,
- fstatat64 = 79,
+ newfstatat = 79,
fstat = 80,
sync = 81,
fsync = 82,
@@ -9381,3 +9381,1709 @@ pub const OpenRisc = enum(usize) {
listns = 470,
rseq_slice_yield = 471,
};
+
+pub const Hppa = enum(usize) {
+ restart_syscall = 0,
+ exit = 1,
+ fork = 2,
+ read = 3,
+ write = 4,
+ open = 5,
+ close = 6,
+ waitpid = 7,
+ creat = 8,
+ link = 9,
+ unlink = 10,
+ execve = 11,
+ chdir = 12,
+ time = 13,
+ mknod = 14,
+ chmod = 15,
+ lchown = 16,
+ socket = 17,
+ stat = 18,
+ lseek = 19,
+ getpid = 20,
+ mount = 21,
+ bind = 22,
+ setuid = 23,
+ getuid = 24,
+ stime = 25,
+ ptrace = 26,
+ alarm = 27,
+ fstat = 28,
+ pause = 29,
+ utime = 30,
+ connect = 31,
+ listen = 32,
+ access = 33,
+ nice = 34,
+ accept = 35,
+ sync = 36,
+ kill = 37,
+ rename = 38,
+ mkdir = 39,
+ rmdir = 40,
+ dup = 41,
+ pipe = 42,
+ times = 43,
+ getsockname = 44,
+ brk = 45,
+ setgid = 46,
+ getgid = 47,
+ signal = 48,
+ geteuid = 49,
+ getegid = 50,
+ acct = 51,
+ umount2 = 52,
+ getpeername = 53,
+ ioctl = 54,
+ fcntl = 55,
+ socketpair = 56,
+ setpgid = 57,
+ send = 58,
+ uname = 59,
+ umask = 60,
+ chroot = 61,
+ ustat = 62,
+ dup2 = 63,
+ getppid = 64,
+ getpgrp = 65,
+ setsid = 66,
+ pivot_root = 67,
+ sgetmask = 68,
+ ssetmask = 69,
+ setreuid = 70,
+ setregid = 71,
+ mincore = 72,
+ sigpending = 73,
+ sethostname = 74,
+ setrlimit = 75,
+ getrlimit = 76,
+ getrusage = 77,
+ gettimeofday = 78,
+ settimeofday = 79,
+ getgroups = 80,
+ setgroups = 81,
+ sendto = 82,
+ symlink = 83,
+ lstat = 84,
+ readlink = 85,
+ uselib = 86,
+ swapon = 87,
+ reboot = 88,
+ mmap2 = 89,
+ mmap = 90,
+ munmap = 91,
+ truncate = 92,
+ ftruncate = 93,
+ fchmod = 94,
+ fchown = 95,
+ getpriority = 96,
+ setpriority = 97,
+ recv = 98,
+ statfs = 99,
+ fstatfs = 100,
+ stat64 = 101,
+ syslog = 103,
+ setitimer = 104,
+ getitimer = 105,
+ capget = 106,
+ capset = 107,
+ pread64 = 108,
+ pwrite64 = 109,
+ getcwd = 110,
+ vhangup = 111,
+ fstat64 = 112,
+ vfork = 113,
+ wait4 = 114,
+ swapoff = 115,
+ sysinfo = 116,
+ shutdown = 117,
+ fsync = 118,
+ madvise = 119,
+ clone = 120,
+ setdomainname = 121,
+ sendfile = 122,
+ recvfrom = 123,
+ adjtimex = 124,
+ mprotect = 125,
+ sigprocmask = 126,
+ init_module = 128,
+ delete_module = 129,
+ quotactl = 131,
+ getpgid = 132,
+ fchdir = 133,
+ bdflush = 134,
+ sysfs = 135,
+ personality = 136,
+ setfsuid = 138,
+ setfsgid = 139,
+ llseek = 140,
+ getdents = 141,
+ newselect = 142,
+ flock = 143,
+ msync = 144,
+ readv = 145,
+ writev = 146,
+ getsid = 147,
+ fdatasync = 148,
+ sysctl = 149,
+ mlock = 150,
+ munlock = 151,
+ mlockall = 152,
+ munlockall = 153,
+ sched_setparam = 154,
+ sched_getparam = 155,
+ sched_setscheduler = 156,
+ sched_getscheduler = 157,
+ sched_yield = 158,
+ sched_get_priority_max = 159,
+ sched_get_priority_min = 160,
+ sched_rr_get_interval = 161,
+ nanosleep = 162,
+ mremap = 163,
+ setresuid = 164,
+ getresuid = 165,
+ sigaltstack = 166,
+ poll = 168,
+ setresgid = 170,
+ getresgid = 171,
+ prctl = 172,
+ rt_sigreturn = 173,
+ rt_sigaction = 174,
+ rt_sigprocmask = 175,
+ rt_sigpending = 176,
+ rt_sigtimedwait = 177,
+ rt_sigqueueinfo = 178,
+ rt_sigsuspend = 179,
+ chown = 180,
+ setsockopt = 181,
+ getsockopt = 182,
+ sendmsg = 183,
+ recvmsg = 184,
+ semop = 185,
+ semget = 186,
+ semctl = 187,
+ msgsnd = 188,
+ msgrcv = 189,
+ msgget = 190,
+ msgctl = 191,
+ shmat = 192,
+ shmdt = 193,
+ shmget = 194,
+ shmctl = 195,
+ lstat64 = 198,
+ truncate64 = 199,
+ ftruncate64 = 200,
+ getdents64 = 201,
+ fcntl64 = 202,
+ gettid = 206,
+ readahead = 207,
+ tkill = 208,
+ sendfile64 = 209,
+ futex = 210,
+ sched_setaffinity = 211,
+ sched_getaffinity = 212,
+ io_setup = 215,
+ io_destroy = 216,
+ io_getevents = 217,
+ io_submit = 218,
+ io_cancel = 219,
+ exit_group = 222,
+ lookup_dcookie = 223,
+ epoll_create = 224,
+ epoll_ctl = 225,
+ epoll_wait = 226,
+ remap_file_pages = 227,
+ semtimedop = 228,
+ mq_open = 229,
+ mq_unlink = 230,
+ mq_timedsend = 231,
+ mq_timedreceive = 232,
+ mq_notify = 233,
+ mq_getsetattr = 234,
+ waitid = 235,
+ fadvise64_64 = 236,
+ set_tid_address = 237,
+ setxattr = 238,
+ lsetxattr = 239,
+ fsetxattr = 240,
+ getxattr = 241,
+ lgetxattr = 242,
+ fgetxattr = 243,
+ listxattr = 244,
+ llistxattr = 245,
+ flistxattr = 246,
+ removexattr = 247,
+ lremovexattr = 248,
+ fremovexattr = 249,
+ timer_create = 250,
+ timer_settime = 251,
+ timer_gettime = 252,
+ timer_getoverrun = 253,
+ timer_delete = 254,
+ clock_settime = 255,
+ clock_gettime = 256,
+ clock_getres = 257,
+ clock_nanosleep = 258,
+ tgkill = 259,
+ mbind = 260,
+ get_mempolicy = 261,
+ set_mempolicy = 262,
+ add_key = 264,
+ request_key = 265,
+ keyctl = 266,
+ ioprio_set = 267,
+ ioprio_get = 268,
+ inotify_init = 269,
+ inotify_add_watch = 270,
+ inotify_rm_watch = 271,
+ migrate_pages = 272,
+ pselect6 = 273,
+ ppoll = 274,
+ openat = 275,
+ mkdirat = 276,
+ mknodat = 277,
+ fchownat = 278,
+ futimesat = 279,
+ fstatat64 = 280,
+ unlinkat = 281,
+ renameat = 282,
+ linkat = 283,
+ symlinkat = 284,
+ readlinkat = 285,
+ fchmodat = 286,
+ faccessat = 287,
+ unshare = 288,
+ set_robust_list = 289,
+ get_robust_list = 290,
+ splice = 291,
+ sync_file_range = 292,
+ tee = 293,
+ vmsplice = 294,
+ move_pages = 295,
+ getcpu = 296,
+ epoll_pwait = 297,
+ statfs64 = 298,
+ fstatfs64 = 299,
+ kexec_load = 300,
+ utimensat = 301,
+ signalfd = 302,
+ eventfd = 304,
+ fallocate = 305,
+ timerfd_create = 306,
+ timerfd_settime = 307,
+ timerfd_gettime = 308,
+ signalfd4 = 309,
+ eventfd2 = 310,
+ epoll_create1 = 311,
+ dup3 = 312,
+ pipe2 = 313,
+ inotify_init1 = 314,
+ preadv = 315,
+ pwritev = 316,
+ rt_tgsigqueueinfo = 317,
+ perf_event_open = 318,
+ recvmmsg = 319,
+ accept4 = 320,
+ prlimit64 = 321,
+ fanotify_init = 322,
+ fanotify_mark = 323,
+ clock_adjtime = 324,
+ name_to_handle_at = 325,
+ open_by_handle_at = 326,
+ syncfs = 327,
+ setns = 328,
+ sendmmsg = 329,
+ process_vm_readv = 330,
+ process_vm_writev = 331,
+ kcmp = 332,
+ finit_module = 333,
+ sched_setattr = 334,
+ sched_getattr = 335,
+ utimes = 336,
+ renameat2 = 337,
+ seccomp = 338,
+ getrandom = 339,
+ memfd_create = 340,
+ bpf = 341,
+ execveat = 342,
+ membarrier = 343,
+ userfaultfd = 344,
+ mlock2 = 345,
+ copy_file_range = 346,
+ preadv2 = 347,
+ pwritev2 = 348,
+ statx = 349,
+ io_pgetevents = 350,
+ pkey_mprotect = 351,
+ pkey_alloc = 352,
+ pkey_free = 353,
+ rseq = 354,
+ kexec_file_load = 355,
+ cacheflush = 356,
+ clock_gettime64 = 403,
+ clock_settime64 = 404,
+ clock_adjtime64 = 405,
+ clock_getres_time64 = 406,
+ clock_nanosleep_time64 = 407,
+ timer_gettime64 = 408,
+ timer_settime64 = 409,
+ timerfd_gettime64 = 410,
+ timerfd_settime64 = 411,
+ utimensat_time64 = 412,
+ pselect6_time64 = 413,
+ ppoll_time64 = 414,
+ io_pgetevents_time64 = 416,
+ recvmmsg_time64 = 417,
+ mq_timedsend_time64 = 418,
+ mq_timedreceive_time64 = 419,
+ semtimedop_time64 = 420,
+ rt_sigtimedwait_time64 = 421,
+ futex_time64 = 422,
+ sched_rr_get_interval_time64 = 423,
+ pidfd_send_signal = 424,
+ io_uring_setup = 425,
+ io_uring_enter = 426,
+ io_uring_register = 427,
+ open_tree = 428,
+ move_mount = 429,
+ fsopen = 430,
+ fsconfig = 431,
+ fsmount = 432,
+ fspick = 433,
+ pidfd_open = 434,
+ clone3 = 435,
+ close_range = 436,
+ openat2 = 437,
+ pidfd_getfd = 438,
+ faccessat2 = 439,
+ process_madvise = 440,
+ epoll_pwait2 = 441,
+ mount_setattr = 442,
+ quotactl_fd = 443,
+ landlock_create_ruleset = 444,
+ landlock_add_rule = 445,
+ landlock_restrict_self = 446,
+ process_mrelease = 448,
+ futex_waitv = 449,
+ set_mempolicy_home_node = 450,
+ cachestat = 451,
+ fchmodat2 = 452,
+ map_shadow_stack = 453,
+ futex_wake = 454,
+ futex_wait = 455,
+ futex_requeue = 456,
+ statmount = 457,
+ listmount = 458,
+ lsm_get_self_attr = 459,
+ lsm_set_self_attr = 460,
+ lsm_list_modules = 461,
+ mseal = 462,
+ setxattrat = 463,
+ getxattrat = 464,
+ listxattrat = 465,
+ removexattrat = 466,
+ open_tree_attr = 467,
+ file_getattr = 468,
+ file_setattr = 469,
+ listns = 470,
+ rseq_slice_yield = 471,
+};
+
+pub const Hppa64 = enum(usize) {
+ restart_syscall = 0,
+ exit = 1,
+ fork = 2,
+ read = 3,
+ write = 4,
+ open = 5,
+ close = 6,
+ waitpid = 7,
+ creat = 8,
+ link = 9,
+ unlink = 10,
+ execve = 11,
+ chdir = 12,
+ time = 13,
+ mknod = 14,
+ chmod = 15,
+ lchown = 16,
+ socket = 17,
+ stat = 18,
+ lseek = 19,
+ getpid = 20,
+ mount = 21,
+ bind = 22,
+ setuid = 23,
+ getuid = 24,
+ stime = 25,
+ ptrace = 26,
+ alarm = 27,
+ fstat = 28,
+ pause = 29,
+ utime = 30,
+ connect = 31,
+ listen = 32,
+ access = 33,
+ nice = 34,
+ accept = 35,
+ sync = 36,
+ kill = 37,
+ rename = 38,
+ mkdir = 39,
+ rmdir = 40,
+ dup = 41,
+ pipe = 42,
+ times = 43,
+ getsockname = 44,
+ brk = 45,
+ setgid = 46,
+ getgid = 47,
+ signal = 48,
+ geteuid = 49,
+ getegid = 50,
+ acct = 51,
+ umount2 = 52,
+ getpeername = 53,
+ ioctl = 54,
+ fcntl = 55,
+ socketpair = 56,
+ setpgid = 57,
+ send = 58,
+ uname = 59,
+ umask = 60,
+ chroot = 61,
+ ustat = 62,
+ dup2 = 63,
+ getppid = 64,
+ getpgrp = 65,
+ setsid = 66,
+ pivot_root = 67,
+ sgetmask = 68,
+ ssetmask = 69,
+ setreuid = 70,
+ setregid = 71,
+ mincore = 72,
+ sigpending = 73,
+ sethostname = 74,
+ setrlimit = 75,
+ getrlimit = 76,
+ getrusage = 77,
+ gettimeofday = 78,
+ settimeofday = 79,
+ getgroups = 80,
+ setgroups = 81,
+ sendto = 82,
+ symlink = 83,
+ lstat = 84,
+ readlink = 85,
+ uselib = 86,
+ swapon = 87,
+ reboot = 88,
+ mmap2 = 89,
+ mmap = 90,
+ munmap = 91,
+ truncate = 92,
+ ftruncate = 93,
+ fchmod = 94,
+ fchown = 95,
+ getpriority = 96,
+ setpriority = 97,
+ recv = 98,
+ statfs = 99,
+ fstatfs = 100,
+ stat64 = 101,
+ syslog = 103,
+ setitimer = 104,
+ getitimer = 105,
+ capget = 106,
+ capset = 107,
+ pread64 = 108,
+ pwrite64 = 109,
+ getcwd = 110,
+ vhangup = 111,
+ fstat64 = 112,
+ vfork = 113,
+ wait4 = 114,
+ swapoff = 115,
+ sysinfo = 116,
+ shutdown = 117,
+ fsync = 118,
+ madvise = 119,
+ clone = 120,
+ setdomainname = 121,
+ sendfile = 122,
+ recvfrom = 123,
+ adjtimex = 124,
+ mprotect = 125,
+ sigprocmask = 126,
+ init_module = 128,
+ delete_module = 129,
+ quotactl = 131,
+ getpgid = 132,
+ fchdir = 133,
+ bdflush = 134,
+ sysfs = 135,
+ personality = 136,
+ setfsuid = 138,
+ setfsgid = 139,
+ llseek = 140,
+ getdents = 141,
+ newselect = 142,
+ flock = 143,
+ msync = 144,
+ readv = 145,
+ writev = 146,
+ getsid = 147,
+ fdatasync = 148,
+ sysctl = 149,
+ mlock = 150,
+ munlock = 151,
+ mlockall = 152,
+ munlockall = 153,
+ sched_setparam = 154,
+ sched_getparam = 155,
+ sched_setscheduler = 156,
+ sched_getscheduler = 157,
+ sched_yield = 158,
+ sched_get_priority_max = 159,
+ sched_get_priority_min = 160,
+ sched_rr_get_interval = 161,
+ nanosleep = 162,
+ mremap = 163,
+ setresuid = 164,
+ getresuid = 165,
+ sigaltstack = 166,
+ poll = 168,
+ setresgid = 170,
+ getresgid = 171,
+ prctl = 172,
+ rt_sigreturn = 173,
+ rt_sigaction = 174,
+ rt_sigprocmask = 175,
+ rt_sigpending = 176,
+ rt_sigtimedwait = 177,
+ rt_sigqueueinfo = 178,
+ rt_sigsuspend = 179,
+ chown = 180,
+ setsockopt = 181,
+ getsockopt = 182,
+ sendmsg = 183,
+ recvmsg = 184,
+ semop = 185,
+ semget = 186,
+ semctl = 187,
+ msgsnd = 188,
+ msgrcv = 189,
+ msgget = 190,
+ msgctl = 191,
+ shmat = 192,
+ shmdt = 193,
+ shmget = 194,
+ shmctl = 195,
+ lstat64 = 198,
+ truncate64 = 199,
+ ftruncate64 = 200,
+ getdents64 = 201,
+ fcntl64 = 202,
+ gettid = 206,
+ readahead = 207,
+ tkill = 208,
+ sendfile64 = 209,
+ futex = 210,
+ sched_setaffinity = 211,
+ sched_getaffinity = 212,
+ io_setup = 215,
+ io_destroy = 216,
+ io_getevents = 217,
+ io_submit = 218,
+ io_cancel = 219,
+ exit_group = 222,
+ lookup_dcookie = 223,
+ epoll_create = 224,
+ epoll_ctl = 225,
+ epoll_wait = 226,
+ remap_file_pages = 227,
+ semtimedop = 228,
+ mq_open = 229,
+ mq_unlink = 230,
+ mq_timedsend = 231,
+ mq_timedreceive = 232,
+ mq_notify = 233,
+ mq_getsetattr = 234,
+ waitid = 235,
+ fadvise64_64 = 236,
+ set_tid_address = 237,
+ setxattr = 238,
+ lsetxattr = 239,
+ fsetxattr = 240,
+ getxattr = 241,
+ lgetxattr = 242,
+ fgetxattr = 243,
+ listxattr = 244,
+ llistxattr = 245,
+ flistxattr = 246,
+ removexattr = 247,
+ lremovexattr = 248,
+ fremovexattr = 249,
+ timer_create = 250,
+ timer_settime = 251,
+ timer_gettime = 252,
+ timer_getoverrun = 253,
+ timer_delete = 254,
+ clock_settime = 255,
+ clock_gettime = 256,
+ clock_getres = 257,
+ clock_nanosleep = 258,
+ tgkill = 259,
+ mbind = 260,
+ get_mempolicy = 261,
+ set_mempolicy = 262,
+ add_key = 264,
+ request_key = 265,
+ keyctl = 266,
+ ioprio_set = 267,
+ ioprio_get = 268,
+ inotify_init = 269,
+ inotify_add_watch = 270,
+ inotify_rm_watch = 271,
+ migrate_pages = 272,
+ pselect6 = 273,
+ ppoll = 274,
+ openat = 275,
+ mkdirat = 276,
+ mknodat = 277,
+ fchownat = 278,
+ futimesat = 279,
+ fstatat64 = 280,
+ unlinkat = 281,
+ renameat = 282,
+ linkat = 283,
+ symlinkat = 284,
+ readlinkat = 285,
+ fchmodat = 286,
+ faccessat = 287,
+ unshare = 288,
+ set_robust_list = 289,
+ get_robust_list = 290,
+ splice = 291,
+ sync_file_range = 292,
+ tee = 293,
+ vmsplice = 294,
+ move_pages = 295,
+ getcpu = 296,
+ epoll_pwait = 297,
+ statfs64 = 298,
+ fstatfs64 = 299,
+ kexec_load = 300,
+ utimensat = 301,
+ signalfd = 302,
+ eventfd = 304,
+ fallocate = 305,
+ timerfd_create = 306,
+ timerfd_settime = 307,
+ timerfd_gettime = 308,
+ signalfd4 = 309,
+ eventfd2 = 310,
+ epoll_create1 = 311,
+ dup3 = 312,
+ pipe2 = 313,
+ inotify_init1 = 314,
+ preadv = 315,
+ pwritev = 316,
+ rt_tgsigqueueinfo = 317,
+ perf_event_open = 318,
+ recvmmsg = 319,
+ accept4 = 320,
+ prlimit64 = 321,
+ fanotify_init = 322,
+ fanotify_mark = 323,
+ clock_adjtime = 324,
+ name_to_handle_at = 325,
+ open_by_handle_at = 326,
+ syncfs = 327,
+ setns = 328,
+ sendmmsg = 329,
+ process_vm_readv = 330,
+ process_vm_writev = 331,
+ kcmp = 332,
+ finit_module = 333,
+ sched_setattr = 334,
+ sched_getattr = 335,
+ utimes = 336,
+ renameat2 = 337,
+ seccomp = 338,
+ getrandom = 339,
+ memfd_create = 340,
+ bpf = 341,
+ execveat = 342,
+ membarrier = 343,
+ userfaultfd = 344,
+ mlock2 = 345,
+ copy_file_range = 346,
+ preadv2 = 347,
+ pwritev2 = 348,
+ statx = 349,
+ io_pgetevents = 350,
+ pkey_mprotect = 351,
+ pkey_alloc = 352,
+ pkey_free = 353,
+ rseq = 354,
+ kexec_file_load = 355,
+ cacheflush = 356,
+ pidfd_send_signal = 424,
+ io_uring_setup = 425,
+ io_uring_enter = 426,
+ io_uring_register = 427,
+ open_tree = 428,
+ move_mount = 429,
+ fsopen = 430,
+ fsconfig = 431,
+ fsmount = 432,
+ fspick = 433,
+ pidfd_open = 434,
+ clone3 = 435,
+ close_range = 436,
+ openat2 = 437,
+ pidfd_getfd = 438,
+ faccessat2 = 439,
+ process_madvise = 440,
+ epoll_pwait2 = 441,
+ mount_setattr = 442,
+ quotactl_fd = 443,
+ landlock_create_ruleset = 444,
+ landlock_add_rule = 445,
+ landlock_restrict_self = 446,
+ process_mrelease = 448,
+ futex_waitv = 449,
+ set_mempolicy_home_node = 450,
+ cachestat = 451,
+ fchmodat2 = 452,
+ map_shadow_stack = 453,
+ futex_wake = 454,
+ futex_wait = 455,
+ futex_requeue = 456,
+ statmount = 457,
+ listmount = 458,
+ lsm_get_self_attr = 459,
+ lsm_set_self_attr = 460,
+ lsm_list_modules = 461,
+ mseal = 462,
+ setxattrat = 463,
+ getxattrat = 464,
+ listxattrat = 465,
+ removexattrat = 466,
+ open_tree_attr = 467,
+ file_getattr = 468,
+ file_setattr = 469,
+ listns = 470,
+ rseq_slice_yield = 471,
+};
+
+pub const Sh = enum(usize) {
+ restart_syscall = 0,
+ exit = 1,
+ fork = 2,
+ read = 3,
+ write = 4,
+ open = 5,
+ close = 6,
+ waitpid = 7,
+ creat = 8,
+ link = 9,
+ unlink = 10,
+ execve = 11,
+ chdir = 12,
+ time = 13,
+ mknod = 14,
+ chmod = 15,
+ lchown = 16,
+ oldstat = 18,
+ lseek = 19,
+ getpid = 20,
+ mount = 21,
+ umount = 22,
+ setuid = 23,
+ getuid = 24,
+ stime = 25,
+ ptrace = 26,
+ alarm = 27,
+ oldfstat = 28,
+ pause = 29,
+ utime = 30,
+ access = 33,
+ nice = 34,
+ sync = 36,
+ kill = 37,
+ rename = 38,
+ mkdir = 39,
+ rmdir = 40,
+ dup = 41,
+ pipe = 42,
+ times = 43,
+ brk = 45,
+ setgid = 46,
+ getgid = 47,
+ signal = 48,
+ geteuid = 49,
+ getegid = 50,
+ acct = 51,
+ umount2 = 52,
+ ioctl = 54,
+ fcntl = 55,
+ setpgid = 57,
+ umask = 60,
+ chroot = 61,
+ ustat = 62,
+ dup2 = 63,
+ getppid = 64,
+ getpgrp = 65,
+ setsid = 66,
+ sigaction = 67,
+ sgetmask = 68,
+ ssetmask = 69,
+ setreuid = 70,
+ setregid = 71,
+ sigsuspend = 72,
+ sigpending = 73,
+ sethostname = 74,
+ setrlimit = 75,
+ getrlimit = 76,
+ getrusage = 77,
+ gettimeofday = 78,
+ settimeofday = 79,
+ getgroups = 80,
+ setgroups = 81,
+ symlink = 83,
+ oldlstat = 84,
+ readlink = 85,
+ uselib = 86,
+ swapon = 87,
+ reboot = 88,
+ readdir = 89,
+ mmap = 90,
+ munmap = 91,
+ truncate = 92,
+ ftruncate = 93,
+ fchmod = 94,
+ fchown = 95,
+ getpriority = 96,
+ setpriority = 97,
+ statfs = 99,
+ fstatfs = 100,
+ socketcall = 102,
+ syslog = 103,
+ setitimer = 104,
+ getitimer = 105,
+ stat = 106,
+ lstat = 107,
+ fstat = 108,
+ olduname = 109,
+ vhangup = 111,
+ wait4 = 114,
+ swapoff = 115,
+ sysinfo = 116,
+ ipc = 117,
+ fsync = 118,
+ sigreturn = 119,
+ clone = 120,
+ setdomainname = 121,
+ uname = 122,
+ cacheflush = 123,
+ adjtimex = 124,
+ mprotect = 125,
+ sigprocmask = 126,
+ init_module = 128,
+ delete_module = 129,
+ quotactl = 131,
+ getpgid = 132,
+ fchdir = 133,
+ bdflush = 134,
+ sysfs = 135,
+ personality = 136,
+ setfsuid = 138,
+ setfsgid = 139,
+ llseek = 140,
+ getdents = 141,
+ newselect = 142,
+ flock = 143,
+ msync = 144,
+ readv = 145,
+ writev = 146,
+ getsid = 147,
+ fdatasync = 148,
+ sysctl = 149,
+ mlock = 150,
+ munlock = 151,
+ mlockall = 152,
+ munlockall = 153,
+ sched_setparam = 154,
+ sched_getparam = 155,
+ sched_setscheduler = 156,
+ sched_getscheduler = 157,
+ sched_yield = 158,
+ sched_get_priority_max = 159,
+ sched_get_priority_min = 160,
+ sched_rr_get_interval = 161,
+ nanosleep = 162,
+ mremap = 163,
+ setresuid = 164,
+ getresuid = 165,
+ poll = 168,
+ nfsservctl = 169,
+ setresgid = 170,
+ getresgid = 171,
+ prctl = 172,
+ rt_sigreturn = 173,
+ rt_sigaction = 174,
+ rt_sigprocmask = 175,
+ rt_sigpending = 176,
+ rt_sigtimedwait = 177,
+ rt_sigqueueinfo = 178,
+ rt_sigsuspend = 179,
+ pread64 = 180,
+ pwrite64 = 181,
+ chown = 182,
+ getcwd = 183,
+ capget = 184,
+ capset = 185,
+ sigaltstack = 186,
+ sendfile = 187,
+ vfork = 190,
+ ugetrlimit = 191,
+ mmap2 = 192,
+ truncate64 = 193,
+ ftruncate64 = 194,
+ stat64 = 195,
+ lstat64 = 196,
+ fstat64 = 197,
+ lchown32 = 198,
+ getuid32 = 199,
+ getgid32 = 200,
+ geteuid32 = 201,
+ getegid32 = 202,
+ setreuid32 = 203,
+ setregid32 = 204,
+ getgroups32 = 205,
+ setgroups32 = 206,
+ fchown32 = 207,
+ setresuid32 = 208,
+ getresuid32 = 209,
+ setresgid32 = 210,
+ getresgid32 = 211,
+ chown32 = 212,
+ setuid32 = 213,
+ setgid32 = 214,
+ setfsuid32 = 215,
+ setfsgid32 = 216,
+ pivot_root = 217,
+ mincore = 218,
+ madvise = 219,
+ getdents64 = 220,
+ fcntl64 = 221,
+ gettid = 224,
+ readahead = 225,
+ setxattr = 226,
+ lsetxattr = 227,
+ fsetxattr = 228,
+ getxattr = 229,
+ lgetxattr = 230,
+ fgetxattr = 231,
+ listxattr = 232,
+ llistxattr = 233,
+ flistxattr = 234,
+ removexattr = 235,
+ lremovexattr = 236,
+ fremovexattr = 237,
+ tkill = 238,
+ sendfile64 = 239,
+ futex = 240,
+ sched_setaffinity = 241,
+ sched_getaffinity = 242,
+ io_setup = 245,
+ io_destroy = 246,
+ io_getevents = 247,
+ io_submit = 248,
+ io_cancel = 249,
+ fadvise64 = 250,
+ exit_group = 252,
+ lookup_dcookie = 253,
+ epoll_create = 254,
+ epoll_ctl = 255,
+ epoll_wait = 256,
+ remap_file_pages = 257,
+ set_tid_address = 258,
+ timer_create = 259,
+ timer_settime = 260,
+ timer_gettime = 261,
+ timer_getoverrun = 262,
+ timer_delete = 263,
+ clock_settime = 264,
+ clock_gettime = 265,
+ clock_getres = 266,
+ clock_nanosleep = 267,
+ statfs64 = 268,
+ fstatfs64 = 269,
+ tgkill = 270,
+ utimes = 271,
+ fadvise64_64 = 272,
+ mbind = 274,
+ get_mempolicy = 275,
+ set_mempolicy = 276,
+ mq_open = 277,
+ mq_unlink = 278,
+ mq_timedsend = 279,
+ mq_timedreceive = 280,
+ mq_notify = 281,
+ mq_getsetattr = 282,
+ kexec_load = 283,
+ waitid = 284,
+ add_key = 285,
+ request_key = 286,
+ keyctl = 287,
+ ioprio_set = 288,
+ ioprio_get = 289,
+ inotify_init = 290,
+ inotify_add_watch = 291,
+ inotify_rm_watch = 292,
+ migrate_pages = 294,
+ openat = 295,
+ mkdirat = 296,
+ mknodat = 297,
+ fchownat = 298,
+ futimesat = 299,
+ fstatat64 = 300,
+ unlinkat = 301,
+ renameat = 302,
+ linkat = 303,
+ symlinkat = 304,
+ readlinkat = 305,
+ fchmodat = 306,
+ faccessat = 307,
+ pselect6 = 308,
+ ppoll = 309,
+ unshare = 310,
+ set_robust_list = 311,
+ get_robust_list = 312,
+ splice = 313,
+ sync_file_range = 314,
+ tee = 315,
+ vmsplice = 316,
+ move_pages = 317,
+ getcpu = 318,
+ epoll_pwait = 319,
+ utimensat = 320,
+ signalfd = 321,
+ timerfd_create = 322,
+ eventfd = 323,
+ fallocate = 324,
+ timerfd_settime = 325,
+ timerfd_gettime = 326,
+ signalfd4 = 327,
+ eventfd2 = 328,
+ epoll_create1 = 329,
+ dup3 = 330,
+ pipe2 = 331,
+ inotify_init1 = 332,
+ preadv = 333,
+ pwritev = 334,
+ rt_tgsigqueueinfo = 335,
+ perf_event_open = 336,
+ fanotify_init = 337,
+ fanotify_mark = 338,
+ prlimit64 = 339,
+ socket = 340,
+ bind = 341,
+ connect = 342,
+ listen = 343,
+ accept = 344,
+ getsockname = 345,
+ getpeername = 346,
+ socketpair = 347,
+ send = 348,
+ sendto = 349,
+ recv = 350,
+ recvfrom = 351,
+ shutdown = 352,
+ setsockopt = 353,
+ getsockopt = 354,
+ sendmsg = 355,
+ recvmsg = 356,
+ recvmmsg = 357,
+ accept4 = 358,
+ name_to_handle_at = 359,
+ open_by_handle_at = 360,
+ clock_adjtime = 361,
+ syncfs = 362,
+ sendmmsg = 363,
+ setns = 364,
+ process_vm_readv = 365,
+ process_vm_writev = 366,
+ kcmp = 367,
+ finit_module = 368,
+ sched_getattr = 369,
+ sched_setattr = 370,
+ renameat2 = 371,
+ seccomp = 372,
+ getrandom = 373,
+ memfd_create = 374,
+ bpf = 375,
+ execveat = 376,
+ userfaultfd = 377,
+ membarrier = 378,
+ mlock2 = 379,
+ copy_file_range = 380,
+ preadv2 = 381,
+ pwritev2 = 382,
+ statx = 383,
+ pkey_mprotect = 384,
+ pkey_alloc = 385,
+ pkey_free = 386,
+ rseq = 387,
+ sync_file_range2 = 388,
+ semget = 393,
+ semctl = 394,
+ shmget = 395,
+ shmctl = 396,
+ shmat = 397,
+ shmdt = 398,
+ msgget = 399,
+ msgsnd = 400,
+ msgrcv = 401,
+ msgctl = 402,
+ clock_gettime64 = 403,
+ clock_settime64 = 404,
+ clock_adjtime64 = 405,
+ clock_getres_time64 = 406,
+ clock_nanosleep_time64 = 407,
+ timer_gettime64 = 408,
+ timer_settime64 = 409,
+ timerfd_gettime64 = 410,
+ timerfd_settime64 = 411,
+ utimensat_time64 = 412,
+ pselect6_time64 = 413,
+ ppoll_time64 = 414,
+ io_pgetevents_time64 = 416,
+ recvmmsg_time64 = 417,
+ mq_timedsend_time64 = 418,
+ mq_timedreceive_time64 = 419,
+ semtimedop_time64 = 420,
+ rt_sigtimedwait_time64 = 421,
+ futex_time64 = 422,
+ sched_rr_get_interval_time64 = 423,
+ pidfd_send_signal = 424,
+ io_uring_setup = 425,
+ io_uring_enter = 426,
+ io_uring_register = 427,
+ open_tree = 428,
+ move_mount = 429,
+ fsopen = 430,
+ fsconfig = 431,
+ fsmount = 432,
+ fspick = 433,
+ pidfd_open = 434,
+ close_range = 436,
+ openat2 = 437,
+ pidfd_getfd = 438,
+ faccessat2 = 439,
+ process_madvise = 440,
+ epoll_pwait2 = 441,
+ mount_setattr = 442,
+ quotactl_fd = 443,
+ landlock_create_ruleset = 444,
+ landlock_add_rule = 445,
+ landlock_restrict_self = 446,
+ process_mrelease = 448,
+ futex_waitv = 449,
+ set_mempolicy_home_node = 450,
+ cachestat = 451,
+ fchmodat2 = 452,
+ map_shadow_stack = 453,
+ futex_wake = 454,
+ futex_wait = 455,
+ futex_requeue = 456,
+ statmount = 457,
+ listmount = 458,
+ lsm_get_self_attr = 459,
+ lsm_set_self_attr = 460,
+ lsm_list_modules = 461,
+ mseal = 462,
+ setxattrat = 463,
+ getxattrat = 464,
+ listxattrat = 465,
+ removexattrat = 466,
+ open_tree_attr = 467,
+ file_getattr = 468,
+ file_setattr = 469,
+ listns = 470,
+ rseq_slice_yield = 471,
+};
+
+pub const Microblaze = enum(usize) {
+ restart_syscall = 0,
+ exit = 1,
+ fork = 2,
+ read = 3,
+ write = 4,
+ open = 5,
+ close = 6,
+ waitpid = 7,
+ creat = 8,
+ link = 9,
+ unlink = 10,
+ execve = 11,
+ chdir = 12,
+ time = 13,
+ mknod = 14,
+ chmod = 15,
+ lchown = 16,
+ @"break" = 17,
+ oldstat = 18,
+ lseek = 19,
+ getpid = 20,
+ mount = 21,
+ umount = 22,
+ setuid = 23,
+ getuid = 24,
+ stime = 25,
+ ptrace = 26,
+ alarm = 27,
+ oldfstat = 28,
+ pause = 29,
+ utime = 30,
+ stty = 31,
+ gtty = 32,
+ access = 33,
+ nice = 34,
+ ftime = 35,
+ sync = 36,
+ kill = 37,
+ rename = 38,
+ mkdir = 39,
+ rmdir = 40,
+ dup = 41,
+ pipe = 42,
+ times = 43,
+ prof = 44,
+ brk = 45,
+ setgid = 46,
+ getgid = 47,
+ signal = 48,
+ geteuid = 49,
+ getegid = 50,
+ acct = 51,
+ umount2 = 52,
+ lock = 53,
+ ioctl = 54,
+ fcntl = 55,
+ mpx = 56,
+ setpgid = 57,
+ ulimit = 58,
+ oldolduname = 59,
+ umask = 60,
+ chroot = 61,
+ ustat = 62,
+ dup2 = 63,
+ getppid = 64,
+ getpgrp = 65,
+ setsid = 66,
+ sigaction = 67,
+ sgetmask = 68,
+ ssetmask = 69,
+ setreuid = 70,
+ setregid = 71,
+ sigsuspend = 72,
+ sigpending = 73,
+ sethostname = 74,
+ setrlimit = 75,
+ getrlimit = 76,
+ getrusage = 77,
+ gettimeofday = 78,
+ settimeofday = 79,
+ getgroups = 80,
+ setgroups = 81,
+ select = 82,
+ symlink = 83,
+ oldlstat = 84,
+ readlink = 85,
+ uselib = 86,
+ swapon = 87,
+ reboot = 88,
+ readdir = 89,
+ mmap = 90,
+ munmap = 91,
+ truncate = 92,
+ ftruncate = 93,
+ fchmod = 94,
+ fchown = 95,
+ getpriority = 96,
+ setpriority = 97,
+ profil = 98,
+ statfs = 99,
+ fstatfs = 100,
+ ioperm = 101,
+ socketcall = 102,
+ syslog = 103,
+ setitimer = 104,
+ getitimer = 105,
+ stat = 106,
+ lstat = 107,
+ fstat = 108,
+ olduname = 109,
+ iopl = 110,
+ vhangup = 111,
+ idle = 112,
+ vm86old = 113,
+ wait4 = 114,
+ swapoff = 115,
+ sysinfo = 116,
+ ipc = 117,
+ fsync = 118,
+ sigreturn = 119,
+ clone = 120,
+ setdomainname = 121,
+ uname = 122,
+ modify_ldt = 123,
+ adjtimex = 124,
+ mprotect = 125,
+ sigprocmask = 126,
+ create_module = 127,
+ init_module = 128,
+ delete_module = 129,
+ get_kernel_syms = 130,
+ quotactl = 131,
+ getpgid = 132,
+ fchdir = 133,
+ bdflush = 134,
+ sysfs = 135,
+ personality = 136,
+ afs_syscall = 137,
+ setfsuid = 138,
+ setfsgid = 139,
+ llseek = 140,
+ getdents = 141,
+ newselect = 142,
+ flock = 143,
+ msync = 144,
+ readv = 145,
+ writev = 146,
+ getsid = 147,
+ fdatasync = 148,
+ sysctl = 149,
+ mlock = 150,
+ munlock = 151,
+ mlockall = 152,
+ munlockall = 153,
+ sched_setparam = 154,
+ sched_getparam = 155,
+ sched_setscheduler = 156,
+ sched_getscheduler = 157,
+ sched_yield = 158,
+ sched_get_priority_max = 159,
+ sched_get_priority_min = 160,
+ sched_rr_get_interval = 161,
+ nanosleep = 162,
+ mremap = 163,
+ setresuid = 164,
+ getresuid = 165,
+ vm86 = 166,
+ query_module = 167,
+ poll = 168,
+ nfsservctl = 169,
+ setresgid = 170,
+ getresgid = 171,
+ prctl = 172,
+ rt_sigreturn = 173,
+ rt_sigaction = 174,
+ rt_sigprocmask = 175,
+ rt_sigpending = 176,
+ rt_sigtimedwait = 177,
+ rt_sigqueueinfo = 178,
+ rt_sigsuspend = 179,
+ pread64 = 180,
+ pwrite64 = 181,
+ chown = 182,
+ getcwd = 183,
+ capget = 184,
+ capset = 185,
+ sigaltstack = 186,
+ sendfile = 187,
+ getpmsg = 188,
+ putpmsg = 189,
+ vfork = 190,
+ ugetrlimit = 191,
+ mmap2 = 192,
+ truncate64 = 193,
+ ftruncate64 = 194,
+ stat64 = 195,
+ lstat64 = 196,
+ fstat64 = 197,
+ lchown32 = 198,
+ getuid32 = 199,
+ getgid32 = 200,
+ geteuid32 = 201,
+ getegid32 = 202,
+ setreuid32 = 203,
+ setregid32 = 204,
+ getgroups32 = 205,
+ setgroups32 = 206,
+ fchown32 = 207,
+ setresuid32 = 208,
+ getresuid32 = 209,
+ setresgid32 = 210,
+ getresgid32 = 211,
+ chown32 = 212,
+ setuid32 = 213,
+ setgid32 = 214,
+ setfsuid32 = 215,
+ setfsgid32 = 216,
+ pivot_root = 217,
+ mincore = 218,
+ madvise = 219,
+ getdents64 = 220,
+ fcntl64 = 221,
+ gettid = 224,
+ readahead = 225,
+ setxattr = 226,
+ lsetxattr = 227,
+ fsetxattr = 228,
+ getxattr = 229,
+ lgetxattr = 230,
+ fgetxattr = 231,
+ listxattr = 232,
+ llistxattr = 233,
+ flistxattr = 234,
+ removexattr = 235,
+ lremovexattr = 236,
+ fremovexattr = 237,
+ tkill = 238,
+ sendfile64 = 239,
+ futex = 240,
+ sched_setaffinity = 241,
+ sched_getaffinity = 242,
+ set_thread_area = 243,
+ get_thread_area = 244,
+ io_setup = 245,
+ io_destroy = 246,
+ io_getevents = 247,
+ io_submit = 248,
+ io_cancel = 249,
+ fadvise64 = 250,
+ exit_group = 252,
+ lookup_dcookie = 253,
+ epoll_create = 254,
+ epoll_ctl = 255,
+ epoll_wait = 256,
+ remap_file_pages = 257,
+ set_tid_address = 258,
+ timer_create = 259,
+ timer_settime = 260,
+ timer_gettime = 261,
+ timer_getoverrun = 262,
+ timer_delete = 263,
+ clock_settime = 264,
+ clock_gettime = 265,
+ clock_getres = 266,
+ clock_nanosleep = 267,
+ statfs64 = 268,
+ fstatfs64 = 269,
+ tgkill = 270,
+ utimes = 271,
+ fadvise64_64 = 272,
+ vserver = 273,
+ mbind = 274,
+ get_mempolicy = 275,
+ set_mempolicy = 276,
+ mq_open = 277,
+ mq_unlink = 278,
+ mq_timedsend = 279,
+ mq_timedreceive = 280,
+ mq_notify = 281,
+ mq_getsetattr = 282,
+ kexec_load = 283,
+ waitid = 284,
+ add_key = 286,
+ request_key = 287,
+ keyctl = 288,
+ ioprio_set = 289,
+ ioprio_get = 290,
+ inotify_init = 291,
+ inotify_add_watch = 292,
+ inotify_rm_watch = 293,
+ migrate_pages = 294,
+ openat = 295,
+ mkdirat = 296,
+ mknodat = 297,
+ fchownat = 298,
+ futimesat = 299,
+ fstatat64 = 300,
+ unlinkat = 301,
+ renameat = 302,
+ linkat = 303,
+ symlinkat = 304,
+ readlinkat = 305,
+ fchmodat = 306,
+ faccessat = 307,
+ pselect6 = 308,
+ ppoll = 309,
+ unshare = 310,
+ set_robust_list = 311,
+ get_robust_list = 312,
+ splice = 313,
+ sync_file_range = 314,
+ tee = 315,
+ vmsplice = 316,
+ move_pages = 317,
+ getcpu = 318,
+ epoll_pwait = 319,
+ utimensat = 320,
+ signalfd = 321,
+ timerfd_create = 322,
+ eventfd = 323,
+ fallocate = 324,
+ semtimedop = 325,
+ timerfd_settime = 326,
+ timerfd_gettime = 327,
+ semctl = 328,
+ semget = 329,
+ semop = 330,
+ msgctl = 331,
+ msgget = 332,
+ msgrcv = 333,
+ msgsnd = 334,
+ shmat = 335,
+ shmctl = 336,
+ shmdt = 337,
+ shmget = 338,
+ signalfd4 = 339,
+ eventfd2 = 340,
+ epoll_create1 = 341,
+ dup3 = 342,
+ pipe2 = 343,
+ inotify_init1 = 344,
+ socket = 345,
+ socketpair = 346,
+ bind = 347,
+ listen = 348,
+ accept = 349,
+ connect = 350,
+ getsockname = 351,
+ getpeername = 352,
+ sendto = 353,
+ send = 354,
+ recvfrom = 355,
+ recv = 356,
+ setsockopt = 357,
+ getsockopt = 358,
+ shutdown = 359,
+ sendmsg = 360,
+ recvmsg = 361,
+ accept4 = 362,
+ preadv = 363,
+ pwritev = 364,
+ rt_tgsigqueueinfo = 365,
+ perf_event_open = 366,
+ recvmmsg = 367,
+ fanotify_init = 368,
+ fanotify_mark = 369,
+ prlimit64 = 370,
+ name_to_handle_at = 371,
+ open_by_handle_at = 372,
+ clock_adjtime = 373,
+ syncfs = 374,
+ setns = 375,
+ sendmmsg = 376,
+ process_vm_readv = 377,
+ process_vm_writev = 378,
+ kcmp = 379,
+ finit_module = 380,
+ sched_setattr = 381,
+ sched_getattr = 382,
+ renameat2 = 383,
+ seccomp = 384,
+ getrandom = 385,
+ memfd_create = 386,
+ bpf = 387,
+ execveat = 388,
+ userfaultfd = 389,
+ membarrier = 390,
+ mlock2 = 391,
+ copy_file_range = 392,
+ preadv2 = 393,
+ pwritev2 = 394,
+ pkey_mprotect = 395,
+ pkey_alloc = 396,
+ pkey_free = 397,
+ statx = 398,
+ io_pgetevents = 399,
+ rseq = 400,
+ clock_gettime64 = 403,
+ clock_settime64 = 404,
+ clock_adjtime64 = 405,
+ clock_getres_time64 = 406,
+ clock_nanosleep_time64 = 407,
+ timer_gettime64 = 408,
+ timer_settime64 = 409,
+ timerfd_gettime64 = 410,
+ timerfd_settime64 = 411,
+ utimensat_time64 = 412,
+ pselect6_time64 = 413,
+ ppoll_time64 = 414,
+ io_pgetevents_time64 = 416,
+ recvmmsg_time64 = 417,
+ mq_timedsend_time64 = 418,
+ mq_timedreceive_time64 = 419,
+ semtimedop_time64 = 420,
+ rt_sigtimedwait_time64 = 421,
+ futex_time64 = 422,
+ sched_rr_get_interval_time64 = 423,
+ pidfd_send_signal = 424,
+ io_uring_setup = 425,
+ io_uring_enter = 426,
+ io_uring_register = 427,
+ open_tree = 428,
+ move_mount = 429,
+ fsopen = 430,
+ fsconfig = 431,
+ fsmount = 432,
+ fspick = 433,
+ pidfd_open = 434,
+ clone3 = 435,
+ close_range = 436,
+ openat2 = 437,
+ pidfd_getfd = 438,
+ faccessat2 = 439,
+ process_madvise = 440,
+ epoll_pwait2 = 441,
+ mount_setattr = 442,
+ quotactl_fd = 443,
+ landlock_create_ruleset = 444,
+ landlock_add_rule = 445,
+ landlock_restrict_self = 446,
+ process_mrelease = 448,
+ futex_waitv = 449,
+ set_mempolicy_home_node = 450,
+ cachestat = 451,
+ fchmodat2 = 452,
+ map_shadow_stack = 453,
+ futex_wake = 454,
+ futex_wait = 455,
+ futex_requeue = 456,
+ statmount = 457,
+ listmount = 458,
+ lsm_get_self_attr = 459,
+ lsm_set_self_attr = 460,
+ lsm_list_modules = 461,
+ mseal = 462,
+ setxattrat = 463,
+ getxattrat = 464,
+ listxattrat = 465,
+ removexattrat = 466,
+ open_tree_attr = 467,
+ file_getattr = 468,
+ file_setattr = 469,
+ listns = 470,
+ rseq_slice_yield = 471,
+};
diff --git a/lib/std/start.zig b/lib/std/start.zig
@@ -170,7 +170,7 @@ fn _start() callconv(.naked) noreturn {
.loongarch32, .loongarch64 => ".cfi_undefined 1",
.m68k => ".cfi_undefined %%pc",
.m88k => ".cfi_undefined %%r1",
- .microblaze, .microblazeel => ".cfi_undefined r15",
+ .microblaze, .microblazeel => "", // No CFI support.
.mips, .mipsel, .mips64, .mips64el => ".cfi_undefined $ra",
.or1k => ".cfi_undefined r9",
.powerpc, .powerpcle, .powerpc64, .powerpc64le => ".cfi_undefined lr",
@@ -345,11 +345,11 @@ fn _start() callconv(.naked) noreturn {
,
.microblaze, .microblazeel =>
// r1 = SP, r15 = LR, r19 = FP, r20 = GP
- \\ ori r15, r0, r0
- \\ ori r19, r0, r0
+ \\ ori r15, r0, 0
+ \\ ori r19, r0, 0
\\ mfs r20, rpc
- \\ addik r20, r20, _GLOBAL_OFFSET_TABLE_ + 8
- \\ ori r5, r1, r0
+ \\ addi r20, r20, _GLOBAL_OFFSET_TABLE_ + 8
+ \\ ori r5, r1, 0
\\ andi r1, r1, -4
\\ brlid r15, %[posixCallMainAndExit]
,
diff --git a/tools/generate_linux_syscalls.zig b/tools/generate_linux_syscalls.zig
@@ -20,11 +20,6 @@ const stdlib_renames = std.StaticStringMap([]const u8).initComptime(.{
.{ "_llseek", "llseek" },
.{ "_newselect", "newselect" },
.{ "_sysctl", "sysctl" },
- // Most 64-bit archs.
- .{ "newfstat", "fstat64" },
- .{ "newfstatat", "fstatat64" },
- // POWER.
- .{ "sync_file_range2", "sync_file_range" },
// ARM EABI/Thumb.
.{ "arm_sync_file_range", "sync_file_range" },
.{ "arm_fadvise64_64", "fadvise64_64" },
@@ -171,11 +166,10 @@ const architectures: []const Arch = &.{
.{ .@"var" = "CSky", .table = .generic, .abi = &.{ .common, .@"32", .csky, .time32, .stat64, .rlimit } },
.{ .@"var" = "Hexagon", .table = .generic, .abi = &.{ .common, .@"32", .hexagon, .time32, .stat64, .rlimit, .renameat } },
.{ .@"var" = "OpenRisc", .table = .generic, .abi = &.{ .common, .@"32", .or1k, .time32, .stat64, .rlimit, .renameat } },
- // .{ .@"var" = "Nios2", .table = .generic, .abi = &.{ .common, .@"32", .nios2, .time32, .stat64, .rlimit, .renameat } },
- // .{ .@"var" = "Parisc", .table = .{ .specific = "arch/parisc/kernel/syscalls/syscall.tbl" }, .abi = &.{ .common, .@"32" } },
- // .{ .@"var" = "Parisc64", .table = .{ .specific = "arch/parisc/kernel/syscalls/syscall.tbl" }, .abi = &.{ .common, .@"64" } },
- // .{ .@"var" = "Sh", .table = .{ .specific = "arch/sh/kernel/syscalls/syscall.tbl" } },
- // .{ .@"var" = "Microblaze", .table = .{ .specific = "arch/microblaze/kernel/syscalls/syscall.tbl" } },
+ .{ .@"var" = "Hppa", .table = .{ .specific = "arch/parisc/kernel/syscalls/syscall.tbl" }, .abi = &.{ .common, .@"32" } },
+ .{ .@"var" = "Hppa64", .table = .{ .specific = "arch/parisc/kernel/syscalls/syscall.tbl" }, .abi = &.{ .common, .@"64" } },
+ .{ .@"var" = "Sh", .table = .{ .specific = "arch/sh/kernel/syscalls/syscall.tbl" } },
+ .{ .@"var" = "Microblaze", .table = .{ .specific = "arch/microblaze/kernel/syscalls/syscall.tbl" } },
};
pub fn main(init: std.process.Init) !void {