diff options
author | Rich Felker <dalias@aerifal.cx> | 2015-02-20 20:25:35 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2015-02-20 20:25:35 -0500 |
commit | f409338a9e808a09001669377c608fd2803d808d (patch) | |
tree | 2eb5478cc7177d8480ed252cc8004d1b102f5acf /src/thread/i386 | |
parent | 6bea5dc69892cd9ff0c222474e7dd468c29dfa75 (diff) | |
download | musl-f409338a9e808a09001669377c608fd2803d808d.tar.gz musl-f409338a9e808a09001669377c608fd2803d808d.tar.xz musl-f409338a9e808a09001669377c608fd2803d808d.zip |
prepare cancellation syscall asm for possibility of __cancel returning
Diffstat (limited to 'src/thread/i386')
-rw-r--r-- | src/thread/i386/syscall_cp.s | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/thread/i386/syscall_cp.s b/src/thread/i386/syscall_cp.s index 3bf52c1f..71ce63f7 100644 --- a/src/thread/i386/syscall_cp.s +++ b/src/thread/i386/syscall_cp.s @@ -11,7 +11,7 @@ __syscall_cp_asm: __cp_begin: movl (%ecx),%eax testl %eax,%eax - jnz __cancel + jnz __cp_cancel movl 24(%esp),%eax movl 28(%esp),%ebx movl 32(%esp),%ecx @@ -27,3 +27,10 @@ __cp_end: popl %esi popl %ebx ret +.global __cp_cancel +__cp_cancel: + popl %ebp + popl %edi + popl %esi + popl %ebx + jmp __cancel |