commit b83d10214bf723c21a912e809fb39f4407dae927 (tree)
parent b958225e687c3b044d52a5adcb58dfb413ee141a
Author: Alex Rønne Petersen <alex@alexrp.com>
Date: Sat, 22 Jun 2024 14:54:03 +0200
std.Thread: Implement LinuxThreadImpl.ThreadCompletion.freeAndExit() for riscv32.
Diffstat:
1 file changed, 13 insertions(+), 0 deletions(-)
diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig
@@ -1171,6 +1171,19 @@ const LinuxThreadImpl = struct {
[len] "r" (self.mapped.len),
: "memory"
),
+ .riscv32 => asm volatile (
+ \\ li a7, 215
+ \\ mv a0, %[ptr]
+ \\ mv a1, %[len]
+ \\ ecall
+ \\ li a7, 93
+ \\ mv a0, zero
+ \\ ecall
+ :
+ : [ptr] "r" (@intFromPtr(self.mapped.ptr)),
+ [len] "r" (self.mapped.len),
+ : "memory"
+ ),
.riscv64 => asm volatile (
\\ li a7, 215
\\ mv a0, %[ptr]