summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/sparc/clone.S
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2005-05-06 02:43:04 +0000
committerPascal Rigaux <pixel@mandriva.com>2005-05-06 02:43:04 +0000
commit4e506c9aefe5b89970ae6894d05ad53c81af0d83 (patch)
tree2fac98df209e72eaba773cad2d7b90c99d9d9249 /mdk-stage1/dietlibc/sparc/clone.S
parent793707b39bf2e9df40a6d2d60b83b3061088ae9e (diff)
downloaddrakx-4e506c9aefe5b89970ae6894d05ad53c81af0d83.tar
drakx-4e506c9aefe5b89970ae6894d05ad53c81af0d83.tar.gz
drakx-4e506c9aefe5b89970ae6894d05ad53c81af0d83.tar.bz2
drakx-4e506c9aefe5b89970ae6894d05ad53c81af0d83.tar.xz
drakx-4e506c9aefe5b89970ae6894d05ad53c81af0d83.zip
use installed dietlibc, not our forked cvs version
Diffstat (limited to 'mdk-stage1/dietlibc/sparc/clone.S')
-rw-r--r--mdk-stage1/dietlibc/sparc/clone.S46
1 files changed, 0 insertions, 46 deletions
diff --git a/mdk-stage1/dietlibc/sparc/clone.S b/mdk-stage1/dietlibc/sparc/clone.S
deleted file mode 100644
index fd8d1d126..000000000
--- a/mdk-stage1/dietlibc/sparc/clone.S
+++ /dev/null
@@ -1,46 +0,0 @@
-#include <errno.h>
-#include "syscalls.h"
-
-.text
-.align 4
-.weak clone
-clone:
-.type __clone,#function
-.global __clone
-__clone:
- save %sp, -96, %sp
-
- tst %i0 /* check for function pointer */
- be .Lerror
- tst %i1 /* check for stack pointer */
- be .Lerror
- nop
-
- mov %i1, %o1 /* child-stack */
- mov %i2, %o0 /* clone-flags */
- mov __NR_clone, %g1
- ta 0x10 /* syscall: clone */
- bcs .Lerror
-
- tst %o1
- bne .Lstart /* we are the child :) */
- nop
- mov %o0, %i0 /* return child pid */
- ret
- restore
-
-.Lerror:
- call __errno_location
- nop
- mov EINVAL, %l0
- st %l0, [%o0]
- ret
- restore %g0, -1, %o0
-
-.Lstart:
- call %i0 /* call child-function */
- mov %i3, %o0 /* put arg in the right place for the child */
-
- call _exit /* child returned */
- nop
-