Kaynağa Gözat

Generic fork works. Use it instead since this didn't handle errno_location.

Manuel Novoa III 20 yıl önce
ebeveyn
işleme
3532e704fd

+ 1 - 1
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 \

+ 0 - 65
libc/sysdeps/linux/mips/fork.S

@@ -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);
-