diff options
author | Mystery Man <unknown@mandriva.org> | 2004-02-20 00:03:26 +0000 |
---|---|---|
committer | Mystery Man <unknown@mandriva.org> | 2004-02-20 00:03:26 +0000 |
commit | 959a1722faec6b30510c788c49dcb4b7cb96d1e0 (patch) | |
tree | 8d25ea2b09098078292e7dcda489471a30b4e81a /mdk-stage1/dietlibc/x86_64/clone.S | |
parent | 0413d7133026a6cddf226027ebdfee6fa68890f7 (diff) | |
download | drakx-backup-do-not-use-959a1722faec6b30510c788c49dcb4b7cb96d1e0.tar drakx-backup-do-not-use-959a1722faec6b30510c788c49dcb4b7cb96d1e0.tar.gz drakx-backup-do-not-use-959a1722faec6b30510c788c49dcb4b7cb96d1e0.tar.bz2 drakx-backup-do-not-use-959a1722faec6b30510c788c49dcb4b7cb96d1e0.tar.xz drakx-backup-do-not-use-959a1722faec6b30510c788c49dcb4b7cb96d1e0.zip |
This commit was manufactured by cvs2svn to create tag 'V10_0_21mdk'.V10_0_21mdk
Diffstat (limited to 'mdk-stage1/dietlibc/x86_64/clone.S')
-rw-r--r-- | mdk-stage1/dietlibc/x86_64/clone.S | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/mdk-stage1/dietlibc/x86_64/clone.S b/mdk-stage1/dietlibc/x86_64/clone.S deleted file mode 100644 index 82c8c5bae..000000000 --- a/mdk-stage1/dietlibc/x86_64/clone.S +++ /dev/null @@ -1,64 +0,0 @@ -#include "syscalls.h" -#include <errno.h> -#include "dietwarning.h" - -.text -.type clone,@function -.weak clone -clone: -.type __clone,@function -.global __clone -__clone: - movl $-EINVAL,%eax - testq %rdi,%rdi /* have non null thread_funcion */ - jz .Lclone_error - testq %rsi,%rsi /* have non null child_stack pointer */ - jz .Lclone_error - - /* put the parameters on thread stack */ - subq $16,%rsi - movq %rcx,8(%rsi) /* thread parameter */ - movq %rdi,0(%rsi) /* thread function */ - - /* syscall */ - movq %rdx,%rdi - movl $__NR_clone,%eax - syscall - cmpl $0,%eax - jl .Lclone_error - jne .Lreturn - -.thread_start: - /* call thread function */ - popq %rax - popq %rdi - call *%rax - /* exit a thread */ - movq %rax,%rdi -#ifdef PIC - jmp _exit@PLT -#else - jmp _exit -#endif - -.Lclone_error: - /* set errno */ - negl %eax - pushq %rax -#ifdef PIC - call __errno_location@PLT -#else - call __errno_location -#endif - popq %rcx - movl %ecx,(%rax) - orq $-1, %rax - -.Lreturn: - /* just return */ - ret - -link_warning("clone", "warning: clone() not yet tested") -link_warning("__clone", "warning: clone() not yet tested") -//link_warning("clone", "warning: clone() not yet implemented") -//link_warning("__clone", "warning: clone() not yet implemented") |