diff options
author | Mystery Man <unknown@mandriva.org> | 2002-09-03 22:11:26 +0000 |
---|---|---|
committer | Mystery Man <unknown@mandriva.org> | 2002-09-03 22:11:26 +0000 |
commit | 27a26c82a667e1091f468e77f7a688341e3fccae (patch) | |
tree | c8c525b36c9c25cd49d2169f65abfc479cad54f5 /mdk-stage1/dietlibc/i386/clone.S | |
parent | ea2afedb2e1bb848dcc27a605a14e3e3ddebbf48 (diff) | |
download | drakx-27a26c82a667e1091f468e77f7a688341e3fccae.tar drakx-27a26c82a667e1091f468e77f7a688341e3fccae.tar.gz drakx-27a26c82a667e1091f468e77f7a688341e3fccae.tar.bz2 drakx-27a26c82a667e1091f468e77f7a688341e3fccae.tar.xz drakx-27a26c82a667e1091f468e77f7a688341e3fccae.zip |
This commit was manufactured by cvs2svn to create tag 'V1_1_9_31mdk'.V1_1_9_31mdk
Diffstat (limited to 'mdk-stage1/dietlibc/i386/clone.S')
-rw-r--r-- | mdk-stage1/dietlibc/i386/clone.S | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/mdk-stage1/dietlibc/i386/clone.S b/mdk-stage1/dietlibc/i386/clone.S deleted file mode 100644 index ac02eb468..000000000 --- a/mdk-stage1/dietlibc/i386/clone.S +++ /dev/null @@ -1,51 +0,0 @@ -#include <asm/unistd.h> - -.text -.weak clone -clone: -.global __clone -__clone: - movl 4(%esp), %ecx /* have non null thread_funcion */ - testl %ecx, %ecx - je .Lclone_error - - movl 8(%esp), %ecx /* have non null child_stack pointer */ - testl %ecx, %ecx - je .Lclone_error - - /* put the parameter on thread stack */ - subl $8, %ecx - - movl 16(%esp), %eax /* arg */ - movl %eax, 4(%ecx) - - movl 4(%esp), %eax /* thread_func */ - movl %eax, 0(%ecx) - - /* the syscall */ - pushl %ebx - movl 16(%esp), %ebx /* flags */ - movl $__NR_clone, %eax - int $0x80 - popl %ebx - - testl %eax, %eax - jl .Lclone_error - je .Lstart_thread - ret - -.Lstart_thread: - xorl %ebp,%ebp - call *%ebx - pushl %eax - call _exit - -.Lclone_error: - negl %eax - pushl %eax - call __errno_location - popl %ecx - movl %ecx, (%eax) - xorl %eax, %eax - decl %eax - ret |