authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-09-15 05:49:43+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-09-15 06:20:59+02:00
log906bf82596bf50e9396568df0144b3cbb3001199
treef849bcc849180e41d9b5497e9cc9caf40b140be8
parente8b432aa5ebc5ecea5e52145ef0b3238aa460c54
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.os.linux: fix some clone() impls not passing fn return value to SYS_exit


4 files changed, 4 insertions(+), 1 deletions(-)

lib/std/os/linux/hexagon.zig-1
......@@ -136,7 +136,6 @@ pub fn clone() callconv(.naked) u32 {
136136 \\ callr r11
137137 \\
138138 \\ r6 = #93 // SYS_exit
139 \\ r0 = #0
140139 \\ trap0(#1)
141140 );
142141}
lib/std/os/linux/microblaze.zig+1
......@@ -144,6 +144,7 @@ pub fn clone() callconv(.naked) u32 {
144144 \\ brald r15, r3
145145 \\ nop
146146 \\
147 \\ ori r5, r3, 0
147148 \\ ori r12, r0, 1 # SYS_exit
148149 \\ brki r14, 0x8
149150 );
lib/std/os/linux/sh.zig+1
......@@ -199,6 +199,7 @@ pub fn clone() callconv(.naked) u32 {
199199 \\ nop
200200 \\
201201 \\ mov #1, r3 ! SYS_exit
202 \\ mov r0, r4
202203 \\ trapa #31
203204 \\ or r0, r0
204205 \\ or r0, r0
lib/std/os/linux/xtensa.zig+2
......@@ -151,6 +151,8 @@ pub fn clone() callconv(.naked) u32 {
151151 \\
152152 \\ mov a2, a10
153153 \\ callx0 a9
154 \\
155 \\ mov a6, a2
154156 ) else asm volatile (
155157 \\ beqz a2, 1f
156158 \\ // parent