summaryrefslogtreecommitdiff
path: root/libc
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-12-10 00:17:59 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-12-10 00:17:59 +0000
commit73130cae6071638370bf04d965f1e076c9710548 (patch)
treeda86d547aace26e433603c729e35526210598cc3 /libc
parentccac11404612ae98a274001f619d343006fed3c0 (diff)
Do hidden pipe, please check the change in mips (.end __pipe?)
Diffstat (limited to 'libc')
-rw-r--r--libc/sysdeps/linux/common/pipe.c4
-rw-r--r--libc/sysdeps/linux/mips/pipe.S13
-rw-r--r--libc/sysdeps/linux/mips/pipe.c3
-rw-r--r--libc/sysdeps/linux/sh/pipe.c5
4 files changed, 15 insertions, 10 deletions
diff --git a/libc/sysdeps/linux/common/pipe.c b/libc/sysdeps/linux/common/pipe.c
index 2cd8dd2f5..2045b8d64 100644
--- a/libc/sysdeps/linux/common/pipe.c
+++ b/libc/sysdeps/linux/common/pipe.c
@@ -9,4 +9,6 @@
#include "syscalls.h"
#include <unistd.h>
-_syscall1(int, pipe, int *, filedes);
+#define __NR___pipe __NR_pipe
+attribute_hidden _syscall1(int, __pipe, int *, filedes);
+strong_alias(__pipe,pipe)
diff --git a/libc/sysdeps/linux/mips/pipe.S b/libc/sysdeps/linux/mips/pipe.S
index c3afae550..1936d7626 100644
--- a/libc/sysdeps/linux/mips/pipe.S
+++ b/libc/sysdeps/linux/mips/pipe.S
@@ -7,9 +7,12 @@
#include <asm/unistd.h>
#include <asm/regdef.h>
- .globl pipe
- .ent pipe, 0
-pipe:
+ .globl pipe
+ .set pipe,__pipe
+ .globl __pipe
+ .hidden __pipe
+ .ent __pipe, 0
+__pipe:
addiu sp,sp,-24
sw a0,16(sp)
li v0,__NR_pipe
@@ -27,5 +30,5 @@ pipe:
2:
addiu sp,sp,24
j ra
- .end pipe
- .size pipe,.-pipe
+ .end __pipe
+ .size __pipe,.-__pipe
diff --git a/libc/sysdeps/linux/mips/pipe.c b/libc/sysdeps/linux/mips/pipe.c
index 65e335964..fbc73b489 100644
--- a/libc/sysdeps/linux/mips/pipe.c
+++ b/libc/sysdeps/linux/mips/pipe.c
@@ -6,7 +6,7 @@
#include <unistd.h>
#include <syscall.h>
-int pipe(int *fd)
+int attribute_hidden __pipe(int *fd)
{
register long int res __asm__ ("$2"); // v0
register long int res2 __asm__ ("$3"); // v1
@@ -21,3 +21,4 @@ int pipe(int *fd)
fd[1] = res2;
return(0);
}
+strong_alias(__pipe,pipe)
diff --git a/libc/sysdeps/linux/sh/pipe.c b/libc/sysdeps/linux/sh/pipe.c
index b07f42d31..a15034599 100644
--- a/libc/sysdeps/linux/sh/pipe.c
+++ b/libc/sysdeps/linux/sh/pipe.c
@@ -5,7 +5,7 @@
#include <unistd.h>
#include <syscall.h>
-int pipe(int *fd)
+int attribute_hidden __pipe(int *fd)
{
long __res, __res2;
__asm__ __volatile__ (
@@ -27,5 +27,4 @@ int pipe(int *fd)
fd[1] = __res2;
return(0);
}
-
-
+strong_alias(__pipe,pipe)