X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fthread%2Fi386%2Fsyscall_cp.s;h=3bf52c1fe67f1a5e332f87eccdf38456b03c8c39;hb=HEAD;hp=519051318b80bd94feb0137d4aa19a48f8518576;hpb=09dae2b7b66f741b30aa7ce95ab395239da20762;p=musl diff --git a/src/thread/i386/syscall_cp.s b/src/thread/i386/syscall_cp.s index 51905131..3bf52c1f 100644 --- a/src/thread/i386/syscall_cp.s +++ b/src/thread/i386/syscall_cp.s @@ -1,35 +1,29 @@ .text .global __syscall_cp_asm -.type __syscall_cp_asm,%function +.type __syscall_cp_asm,@function __syscall_cp_asm: + mov 4(%esp),%ecx pushl %ebx pushl %esi pushl %edi pushl %ebp - leal 20(%esp),%ebp - call 1f -1: popl %eax - movl (%ebp),%ecx - addl $[1f-1b],%eax - movl %eax,4(%ecx) - movl %esp,(%ecx) - movl 8(%ecx),%eax +.global __cp_begin +__cp_begin: + movl (%ecx),%eax testl %eax,%eax - jnz 2f - movl 4(%ebp),%eax - movl 8(%ebp),%ebx - movl 12(%ebp),%ecx - movl 16(%ebp),%edx - movl 20(%ebp),%esi - movl 24(%ebp),%edi - movl 28(%ebp),%ebp -1: int $128 + jnz __cancel + movl 24(%esp),%eax + movl 28(%esp),%ebx + movl 32(%esp),%ecx + movl 36(%esp),%edx + movl 40(%esp),%esi + movl 44(%esp),%edi + movl 48(%esp),%ebp + int $128 +.global __cp_end +__cp_end: popl %ebp popl %edi popl %esi popl %ebx - xorl %edx,%edx - movl 4(%esp),%ecx - movl %edx,(%ecx) ret -2: call __cancel