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 {...@@ -136,7 +136,6 @@ pub fn clone() callconv(.naked) u32 {
136 \\ callr r11136 \\ callr r11
137 \\137 \\
138 \\ r6 = #93 // SYS_exit138 \\ r6 = #93 // SYS_exit
139 \\ r0 = #0
140 \\ trap0(#1)139 \\ trap0(#1)
141 );140 );
142}141}
lib/std/os/linux/microblaze.zig+1
...@@ -144,6 +144,7 @@ pub fn clone() callconv(.naked) u32 {...@@ -144,6 +144,7 @@ pub fn clone() callconv(.naked) u32 {
144 \\ brald r15, r3144 \\ brald r15, r3
145 \\ nop145 \\ nop
146 \\146 \\
147 \\ ori r5, r3, 0
147 \\ ori r12, r0, 1 # SYS_exit148 \\ ori r12, r0, 1 # SYS_exit
148 \\ brki r14, 0x8149 \\ brki r14, 0x8
149 );150 );
lib/std/os/linux/sh.zig+1
...@@ -199,6 +199,7 @@ pub fn clone() callconv(.naked) u32 {...@@ -199,6 +199,7 @@ pub fn clone() callconv(.naked) u32 {
199 \\ nop199 \\ nop
200 \\200 \\
201 \\ mov #1, r3 ! SYS_exit201 \\ mov #1, r3 ! SYS_exit
202 \\ mov r0, r4
202 \\ trapa #31203 \\ trapa #31
203 \\ or r0, r0204 \\ or r0, r0
204 \\ or r0, r0205 \\ or r0, r0
lib/std/os/linux/xtensa.zig+2
...@@ -151,6 +151,8 @@ pub fn clone() callconv(.naked) u32 {...@@ -151,6 +151,8 @@ pub fn clone() callconv(.naked) u32 {
151 \\151 \\
152 \\ mov a2, a10152 \\ mov a2, a10
153 \\ callx0 a9153 \\ callx0 a9
154 \\
155 \\ mov a6, a2
154 ) else asm volatile (156 ) else asm volatile (
155 \\ beqz a2, 1f157 \\ beqz a2, 1f
156 \\ // parent158 \\ // parent