diff options
author | Manuel Novoa III <mjn3@codepoet.org> | 2004-02-15 10:35:42 +0000 |
---|---|---|
committer | Manuel Novoa III <mjn3@codepoet.org> | 2004-02-15 10:35:42 +0000 |
commit | 3532e704fd568e55de373cbb271271349c1b0fae (patch) | |
tree | 5d6b4a10776a9f0b631b29666ddd2a1370ea74d0 /libc/sysdeps/linux/mips | |
parent | c66701f81d1e06e04464f41f5082822951bc14dc (diff) |
Generic fork works. Use it instead since this didn't handle errno_location.
Diffstat (limited to 'libc/sysdeps/linux/mips')
-rw-r--r-- | libc/sysdeps/linux/mips/Makefile | 2 | ||||
-rw-r--r-- | libc/sysdeps/linux/mips/fork.S | 65 |
2 files changed, 1 insertions, 66 deletions
diff --git a/libc/sysdeps/linux/mips/Makefile b/libc/sysdeps/linux/mips/Makefile index 7ae715000..a35408611 100644 --- a/libc/sysdeps/linux/mips/Makefile +++ b/libc/sysdeps/linux/mips/Makefile @@ -24,7 +24,7 @@ CRT0_SRC = crt0.S CRT0_OBJ = crt0.o crt1.o CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o -SSRC=bsd-_setjmp.S bsd-setjmp.S setjmp.S clone.S fork.S syscall.S pipe.S +SSRC=bsd-_setjmp.S bsd-setjmp.S setjmp.S clone.S syscall.S pipe.S SOBJS=$(patsubst %.S,%.o, $(SSRC)) CSRC=__longjmp.c brk.c setjmp_aux.c mmap.c __syscall_error.c \ diff --git a/libc/sysdeps/linux/mips/fork.S b/libc/sysdeps/linux/mips/fork.S deleted file mode 100644 index 6d2b33dba..000000000 --- a/libc/sysdeps/linux/mips/fork.S +++ /dev/null @@ -1,65 +0,0 @@ -#include <features.h> - -#define ALIGN 2 - -/* Note: .abicalls goes at top of routine, and only one of them. */ -#if defined(USER_ABICALLS) -#define ABISETUP \ - .set noreorder; \ - .cpload t9; \ - .set reorder; - - .abicalls -#else -#define ABISETUP -#endif - -#ifndef __UCLIBC_USE_UNIFIED_SYSCALL__ -#define SYSCALL__(name) \ - .text; \ - .align ALIGN; \ - .globl name; \ - .ent name, 0; \ - name: ; \ - ABISETUP \ - li v0, __NR_##name ; \ - syscall; \ - la t3, errno; \ - beqz a3, 1f; \ - negu a1, v0; \ - sw a1, 0(t3); \ - li v0, -1; \ - 1: ; \ - j ra; \ - .end name; \ - .size name,.-name; -#else /* Unified syscall */ -#define SYSCALL__(name) \ - .text; \ -/* .align ALIGN;*/ \ - .globl name; \ - .ent name, 0; \ - name: ; \ - ABISETUP \ - .set push; \ - .set noreorder; \ - j __uClibc_syscall; \ - addiu v0, zero, __NR_##name ; \ - .set pop; \ - .end name; \ - .size name,.-name; -#endif /* __UCLIBC_USE_UNIFIED_SYSCALL__ */ - -#undef ALIGN -#define __ASSEMBLY__ -#include <asm/asm.h> -#include <asm/unistd.h> -#include <asm/mipsregs.h> -#include <asm/regdef.h> -/* #include <asm/stackframe.h> */ - -#undef ALIGN -#define ALIGN 2 -#define _SYSCALL0(type,name) SYSCALL__(name) -_SYSCALL0(pid_t, fork); - |