Browse Source

Do hidden brk, hide _brk as well for some archs, convert users of brk

Peter S. Mazinger 20 years ago
parent
commit
3c2175b12b

+ 1 - 0
libc/sysdeps/linux/alpha/brk.S

@@ -39,6 +39,7 @@ __curbrk: .skip 8
 
 	.text
 .globl  __brk;
+.hidden __brk;
 .align 3;
 .ent  __brk , 0;
 

+ 2 - 1
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)

+ 2 - 1
libc/sysdeps/linux/bfin/brk.c

@@ -6,7 +6,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;
 
@@ -28,3 +28,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 2
libc/sysdeps/linux/common/bits/uClibc_stdio.h

@@ -363,8 +363,8 @@ struct __STDIO_FILE_STRUCT {
  **********************************************************************/
 #if defined _LIBC && (defined IS_IN_libc || defined NOT_IN_libc)
 
-extern void _stdio_init(void);
-extern void _stdio_term(void);
+extern void _stdio_init(void) attribute_hidden;
+extern void _stdio_term(void) attribute_hidden;
 
 #ifdef __STDIO_HAS_OPENLIST
 

+ 3 - 3
libc/sysdeps/linux/common/sbrk.c

@@ -21,7 +21,7 @@
 
 /* Defined in brk.c.  */
 extern void *__curbrk;
-extern int brk (void *addr);
+extern int __brk (void *addr) attribute_hidden;
 
 
 /* Extend the process's data space by INCREMENT.
@@ -32,14 +32,14 @@ void attribute_hidden * __sbrk (intptr_t increment)
     void *oldbrk;
 
     if (__curbrk == NULL)
-	if (brk (0) < 0)		/* Initialize the break.  */
+	if (__brk (0) < 0)		/* Initialize the break.  */
 	    return (void *) -1;
 
     if (increment == 0)
 	return __curbrk;
 
     oldbrk = __curbrk;
-    if (brk (oldbrk + increment) < 0)
+    if (__brk (oldbrk + increment) < 0)
 	return (void *) -1;
 
     return oldbrk;

+ 2 - 1
libc/sysdeps/linux/cris/brk.c

@@ -7,7 +7,7 @@ extern void * __curbrk;
 
 extern int __init_brk (void);
 
-int brk(void * end_data_seg)
+int attribute_hidden __brk(void * end_data_seg)
 {
 	if (__init_brk () == 0) {
 		/*
@@ -29,3 +29,4 @@ int brk(void * end_data_seg)
 	return -1;
 
 }
+strong_alias(__brk,brk)

+ 1 - 1
libc/sysdeps/linux/frv/__init_brk.c

@@ -7,7 +7,7 @@
 void * __curbrk = 0;
 
 #define __NR__brk __NR_brk
-_syscall1(void *, _brk, void *, ptr);
+attribute_hidden _syscall1(void *, _brk, void *, ptr);
 
 int
 __init_brk (void)

+ 3 - 2
libc/sysdeps/linux/frv/brk.c

@@ -7,9 +7,9 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
-int brk(void * end_data_seg)
+int attribute_hidden __brk(void * end_data_seg)
 {
     if (__init_brk () == 0)
     {
@@ -20,3 +20,4 @@ int brk(void * end_data_seg)
     }
     return -1;
 }
+strong_alias(__brk,brk)

+ 1 - 1
libc/sysdeps/linux/frv/sbrk.c

@@ -7,7 +7,7 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
 void attribute_hidden *
 __sbrk(intptr_t increment)

+ 2 - 1
libc/sysdeps/linux/h8300/brk.c

@@ -9,7 +9,7 @@
 void *__curbrk = 0;
 
 
-int brk (void *addr)
+int attribute_hidden __brk (void *addr)
 {
     void *newbrk;
 
@@ -31,3 +31,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 3 - 2
libc/sysdeps/linux/hppa/brk.c

@@ -23,8 +23,8 @@
 /* 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;
 
@@ -38,3 +38,4 @@ brk (void *addr)
 
   return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 2
libc/sysdeps/linux/i386/brk.c

@@ -25,8 +25,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 *__unbounded newbrk, *__unbounded scratch;
 
@@ -47,3 +46,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 1
libc/sysdeps/linux/m68k/brk.c

@@ -7,7 +7,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;
 
@@ -28,3 +28,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 1
libc/sysdeps/linux/mips/brk.c

@@ -23,7 +23,7 @@
 
 void *__curbrk = 0;
 
-int brk (void *addr)
+int attribute_hidden __brk (void *addr)
 {
   void *newbrk;
 
@@ -47,3 +47,4 @@ int brk (void *addr)
 
   return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 2
libc/sysdeps/linux/nios/brk.c

@@ -25,8 +25,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;
     register int g1 asm("%g1") = __NR_brk;
@@ -43,3 +42,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 1
libc/sysdeps/linux/nios2/brk.c

@@ -26,7 +26,7 @@
 void *__curbrk = 0;
 
 
-int brk (void *addr)
+int attribute_hidden __brk (void *addr)
 {
     void *newbrk;
     register int r2 asm("r2") = TRAP_ID_SYSCALL;
@@ -44,3 +44,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 1 - 0
libc/sysdeps/linux/powerpc/brk.S

@@ -26,6 +26,7 @@
 	.comm	__curbrk,4,4
 	.text
 	.globl	__brk
+	.hidden	__brk
 	.type	__brk,@function
 	.align	2
 

+ 1 - 1
libc/sysdeps/linux/sh/__init_brk.c

@@ -7,7 +7,7 @@
 void * __curbrk = 0;
 
 #define __NR__brk __NR_brk
-_syscall1(void *, _brk, void *, ptr);
+attribute_hidden _syscall1(void *, _brk, void *, ptr);
 
 int
 __init_brk (void)

+ 3 - 2
libc/sysdeps/linux/sh/brk.c

@@ -7,9 +7,9 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
-int brk(void * end_data_seg)
+int attribute_hidden __brk(void * end_data_seg)
 {
     if (__init_brk () == 0)
     {
@@ -20,3 +20,4 @@ int brk(void * end_data_seg)
     }
     return -1;
 }
+strong_alias(__brk,brk)

+ 1 - 1
libc/sysdeps/linux/sh/sbrk.c

@@ -7,7 +7,7 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
 void attribute_hidden *
 __sbrk(intptr_t increment)

+ 1 - 1
libc/sysdeps/linux/sh64/__init_brk.c

@@ -7,7 +7,7 @@
 void * __curbrk = 0;
 
 #define __NR__brk __NR_brk
-_syscall1(void *, _brk, void *, ptr);
+attribute_hidden _syscall1(void *, _brk, void *, ptr);
 
 int
 __init_brk (void)

+ 3 - 2
libc/sysdeps/linux/sh64/brk.c

@@ -7,9 +7,9 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
-int brk(void * end_data_seg)
+int attribute_hidden __brk(void * end_data_seg)
 {
     if (__init_brk () == 0)
     {
@@ -20,3 +20,4 @@ int brk(void * end_data_seg)
     }
     return -1;
 }
+strong_alias(__brk,brk)

+ 1 - 1
libc/sysdeps/linux/sh64/sbrk.c

@@ -7,7 +7,7 @@
 extern void * __curbrk;
 
 extern int __init_brk (void);
-extern void *_brk(void *ptr);
+extern void *_brk(void *ptr) attribute_hidden;
 
 void attribute_hidden *
 __sbrk(intptr_t increment)

+ 2 - 1
libc/sysdeps/linux/sparc/brk.c

@@ -26,7 +26,7 @@
 void *__curbrk = 0;
 
 
-int brk (void *addr)
+int attribute_hidden __brk (void *addr)
 {
     void *newbrk;
 
@@ -47,3 +47,4 @@ int brk (void *addr)
 
     return 0;
 }
+strong_alias(__brk,brk)

+ 2 - 1
libc/sysdeps/linux/x86_64/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 *__unbounded newbrk;
 
@@ -42,3 +42,4 @@ int brk (void *addr)
 
 	return 0;
 }
+strong_alias(__brk,brk)