X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fthread%2Fi386%2Fsyscall_cp.s;h=3bf52c1fe67f1a5e332f87eccdf38456b03c8c39;hb=1e597a3e9bbdbe82d2ffd3963019d3a3edeed859;hp=fa435f32ec3d127dec911fc9d8c0da1f4e79fa0c;hpb=1e4f1cf154d18d2bd13cd4524a8bbae6786efd02;p=musl diff --git a/src/thread/i386/syscall_cp.s b/src/thread/i386/syscall_cp.s index fa435f32..3bf52c1f 100644 --- a/src/thread/i386/syscall_cp.s +++ b/src/thread/i386/syscall_cp.s @@ -1,34 +1,29 @@ .text .global __syscall_cp_asm +.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