summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/arm
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/arm')
-rw-r--r--libc/sysdeps/linux/arm/brk.c3
-rw-r--r--libc/sysdeps/linux/arm/clone.S6
-rw-r--r--libc/sysdeps/linux/arm/ioperm.c1
-rw-r--r--libc/sysdeps/linux/arm/vfork.S15
4 files changed, 14 insertions, 11 deletions
diff --git a/libc/sysdeps/linux/arm/brk.c b/libc/sysdeps/linux/arm/brk.c
index 82b9835ae..e711db3b1 100644
--- a/libc/sysdeps/linux/arm/brk.c
+++ b/libc/sysdeps/linux/arm/brk.c
@@ -24,7 +24,7 @@
/* This must be initialized data because commons can't have aliases. */
void *__curbrk = 0;
-int brk (void *addr)
+int attribute_hidden __brk (void *addr)
{
void *newbrk = (void*)INTERNAL_SYSCALL(brk, , 1, addr);
@@ -37,3 +37,4 @@ int brk (void *addr)
return 0;
}
+strong_alias(__brk,brk)
diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S
index a4d5f99bd..946d4bdda 100644
--- a/libc/sysdeps/linux/arm/clone.S
+++ b/libc/sysdeps/linux/arm/clone.S
@@ -59,11 +59,7 @@ __clone:
ldr pc, [sp]
@ and we are done, passing the return value through r0
-#ifdef __PIC__
- b _exit(PLT)
-#else
- b _exit
-#endif
+ b _exit_internal
__error:
b __syscall_error
diff --git a/libc/sysdeps/linux/arm/ioperm.c b/libc/sysdeps/linux/arm/ioperm.c
index 837de8adf..0c0c21182 100644
--- a/libc/sysdeps/linux/arm/ioperm.c
+++ b/libc/sysdeps/linux/arm/ioperm.c
@@ -37,6 +37,7 @@
#define mmap __mmap
#define sscanf __sscanf
#define fscanf __fscanf
+#define fgets __fgets
#include <errno.h>
#include <fcntl.h>
diff --git a/libc/sysdeps/linux/arm/vfork.S b/libc/sysdeps/linux/arm/vfork.S
index 530bba07c..68798995a 100644
--- a/libc/sysdeps/linux/arm/vfork.S
+++ b/libc/sysdeps/linux/arm/vfork.S
@@ -8,16 +8,20 @@
* Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
*/
+#include <features.h>
+
#define _ERRNO_H
#include <bits/errno.h>
#include <sys/syscall.h>
#ifdef __NR_fork
.text
-.global vfork
-.type vfork,%function
+.global __vfork
+.hidden __vfork
+.type __vfork,%function
.align 4
-vfork:
+
+__vfork:
#ifdef __NR_vfork
swi __NR_vfork
@@ -34,11 +38,12 @@ vfork:
swi __NR_fork
cmn r0, #4096
- /* Syscal worked. Return to child/parent */
+ /* Syscall worked. Return to child/parent */
movcc pc, lr
__error:
b __syscall_error
-.size vfork,.-vfork
+.size __vfork,.-__vfork
+strong_alias(__vfork,vfork)
#endif