authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-09-15 06:20:30+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-09-15 06:20:59+02:00
log06572679616ab0d92b7af8a3674b3c21f7106cf5
tree0036bd7559bb5e1d6a9813e520928d3bcf6c74bc
parent906bf82596bf50e9396568df0144b3cbb3001199
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.os.linux.or1k: fix swapped ctid/tls in clone()


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

lib/std/os/linux/or1k.zig+4-4
...@@ -120,8 +120,8 @@ pub fn clone() callconv(.naked) u32 {...@@ -120,8 +120,8 @@ pub fn clone() callconv(.naked) u32 {
120 // __clone(func, stack, flags, arg, ptid, tls, ctid)120 // __clone(func, stack, flags, arg, ptid, tls, ctid)
121 // r3, r4, r5, r6, r7, r8, +0121 // r3, r4, r5, r6, r7, r8, +0
122 //122 //
123 // syscall(SYS_clone, flags, stack, ptid, tls, ctid)123 // syscall(SYS_clone, flags, stack, ptid, ctid, tls)
124 // r11 r3, r4, r5, r6, r7124 // r11 r3, r4, r5, r6, r7
125 asm volatile (125 asm volatile (
126 \\ # Save function pointer and argument pointer on new thread stack126 \\ # Save function pointer and argument pointer on new thread stack
127 \\ l.addi r13, r0, -4127 \\ l.addi r13, r0, -4
...@@ -134,8 +134,8 @@ pub fn clone() callconv(.naked) u32 {...@@ -134,8 +134,8 @@ pub fn clone() callconv(.naked) u32 {
134 \\ l.ori r11, r0, 220 # SYS_clone134 \\ l.ori r11, r0, 220 # SYS_clone
135 \\ l.ori r3, r5, 0135 \\ l.ori r3, r5, 0
136 \\ l.ori r5, r7, 0136 \\ l.ori r5, r7, 0
137 \\ l.ori r6, r8, 0137 \\ l.lwz r6, 0(r1)
138 \\ l.lwz r7, 0(r1)138 \\ l.ori r7, r8, 0
139 \\ l.sys 1139 \\ l.sys 1
140 \\ l.sfeqi r11, 0140 \\ l.sfeqi r11, 0
141 \\ l.bf 1f141 \\ l.bf 1f