X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fthread%2Fsh%2Fclone.s;h=aa4d0dfd7e9fa29918cb31774ae6d0de7b77d4d2;hb=e6def544358afd5648a428d2e02c147a1f901048;hp=d6c9184d40ec01f373bdfc91ebd8e737f095fa62;hpb=aacd348637e38795dd7ae3c7c8c908d8c0cd24fd;p=musl diff --git a/src/thread/sh/clone.s b/src/thread/sh/clone.s index d6c9184d..aa4d0dfd 100644 --- a/src/thread/sh/clone.s +++ b/src/thread/sh/clone.s @@ -17,7 +17,7 @@ __clone: mov.l @r15, r6 ! r6 = ptid mov.l @(8,r15), r7 ! r7 = ctid mov.l @(4,r15), r0 ! r0 = tls - trapa #21 + trapa #31 or r0, r0 or r0, r0 @@ -33,15 +33,21 @@ __clone: nop 1: ! we are the child, call fn(arg) - jsr @r1 - mov r2, r4 + mov.l 1f, r0 + mov r1, r5 + bsrf r0 + mov r2, r4 - mov #1, r3 ! __NR_exit +2: mov #1, r3 ! __NR_exit mov r0, r4 - trapa #17 + trapa #31 or r0, r0 or r0, r0 or r0, r0 or r0, r0 or r0, r0 + +.align 2 +.hidden __shcall +1: .long __shcall@PCREL+(.-2b)