summaryrefslogtreecommitdiffstats
path: root/lib/libc/mips/sys/fork.S
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/mips/sys/fork.S')
-rw-r--r--lib/libc/mips/sys/fork.S12
1 files changed, 3 insertions, 9 deletions
diff --git a/lib/libc/mips/sys/fork.S b/lib/libc/mips/sys/fork.S
index 2d1f14b..7636bd3 100644
--- a/lib/libc/mips/sys/fork.S
+++ b/lib/libc/mips/sys/fork.S
@@ -44,20 +44,14 @@ __FBSDID("$FreeBSD$");
LEAF(__sys_fork)
WEAK_ALIAS(fork, __sys_fork)
WEAK_ALIAS(_fork, __sys_fork)
-#ifdef __ABICALLS__
- .set noreorder
- .cpload t9
- .set reorder
-#endif
- fork = __sys_fork
+ PIC_PROLOGUE(__sys_fork)
li v0, SYS_fork # pid = fork()
syscall
bne a3, zero, 2f
beq v1, zero, 1f # v1 == 0 in parent, 1 in child
move v0, zero
1:
- j ra
+ PIC_RETURN()
2:
- la t9, _C_LABEL(__cerror)
- jr t9
+ PIC_TAILCALL(__cerror)
END(__sys_fork)
OpenPOWER on IntegriCloud