From 4cd6a4a5d7e49d54d53dcf4a6f3393d50bd88e8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gwenol=C3=A9=20Beauchesne?= Date: Wed, 4 Jun 2003 18:44:09 +0000 Subject: Import dietlibc 0.22 + other fixes for AMD64 --- mdk-stage1/dietlibc/ia64/clone.S | 41 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 mdk-stage1/dietlibc/ia64/clone.S (limited to 'mdk-stage1/dietlibc/ia64/clone.S') diff --git a/mdk-stage1/dietlibc/ia64/clone.S b/mdk-stage1/dietlibc/ia64/clone.S new file mode 100644 index 000000000..ba768141c --- /dev/null +++ b/mdk-stage1/dietlibc/ia64/clone.S @@ -0,0 +1,41 @@ +/* This is untested code which probably won´t work out of the box! */ + +#include "syscalls.h" +#include + +.text +.globl __clone +.proc __clone +.weak __clone2 +__clone2: +__clone: + mov r8 = EINVAL + cmp.eq p6,p0=0,r32 +(p6) br.cond.spnt.few __error_unified_syscall + cmp.eq p6,p0=0,r33 +(p6) br.cond.spnt.few __error_unified_syscall + flushrs + + mov.m r17 = ar.rsc + mov r14 = r32 + mov r18 = r33 + mov r16 = r36;; + mov r15 = __NR_clone2 + break 0x100000 + cmp.eq p6,p0=-1,r10 +(p6) br.cond.spnt.few __error_unified_syscall + cmp.eq p6,p7=0,r8 +(p6) ld8 r34=[r14],8 +(p6) mov.m ar.bspstore=r18 +(p6) mov r32 = r16 + mov.m ar.rsc = r17 +(p7) br.ret.sptk b0 + ld8 r1 = [r14] + mov b6 = r34 + br.call.dptk.few b0=b6 + mov r32 = r8 + br.call.dptk.few b0=__error_unified_syscall + br.ret.sptk.few b0 +.endp __clone +.endp __clone2 +.size __clone, . - __clone -- cgit v1.2.1