X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Fthread%2Fmips%2Fclone.s;h=37dddf57ba9575c9e849b03ad195b0caea1ddf4a;hb=2068b4e8911a3a49cded44b4568f6c943a8c98f8;hp=826716ab7f423ecdc9b2f0f7e18bdb48be17e861;hpb=a03f69d4456d3ac5120cc07a22af8ecb631444bb;p=musl diff --git a/src/thread/mips/clone.s b/src/thread/mips/clone.s index 826716ab..37dddf57 100644 --- a/src/thread/mips/clone.s +++ b/src/thread/mips/clone.s @@ -3,6 +3,7 @@ .type __clone,@function __clone: # Save function pointer and argument pointer on new thread stack + and $5, $5, -8 subu $5, $5, 16 sw $4, 0($5) sw $7, 4($5) @@ -11,15 +12,18 @@ __clone: lw $6, 16($sp) lw $7, 20($sp) lw $9, 24($sp) + subu $sp, $sp, 16 sw $9, 16($sp) li $2, 4120 syscall beq $7, $0, 1f nop + addu $sp, $sp, 16 jr $ra subu $2, $0, $2 1: beq $2, $0, 1f nop + addu $sp, $sp, 16 jr $ra nop 1: lw $25, 0($sp)