From de87c856e78fa8c9a92a7d9638c287fd70d7f235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Tue, 21 Oct 2025 05:56:46 +0200 Subject: [PATCH] std.Thread: implement freeAndExit() for alpha-linux --- lib/std/Thread.zig | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig index 049ea9e8b7..02d7dc9eee 100644 --- a/lib/std/Thread.zig +++ b/lib/std/Thread.zig @@ -1235,6 +1235,18 @@ const LinuxThreadImpl = struct { : [ptr] "r" (@intFromPtr(self.mapped.ptr)), [len] "r" (self.mapped.len), : .{ .memory = true }), + .alpha => asm volatile ( + \\ ldi $0, 73 # SYS_munmap + \\ mov %[ptr], $16 + \\ mov %[len], $17 + \\ callsys + \\ ldi $0, 1 # SYS_exit + \\ ldi $16, 0 + \\ callsys + : + : [ptr] "r" (@intFromPtr(self.mapped.ptr)), + [len] "r" (self.mapped.len), + : .{ .memory = true }), .hexagon => asm volatile ( \\ r6 = #215 // SYS_munmap \\ r0 = %[ptr]