From f56b8b7c820e8e6cf44a80a4e2c9b2ba5e48aa47 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Mon, 31 Oct 2005 20:49:25 +0000 Subject: [PATCH] * sysdeps/arm/eabi/Makefile (static-only-routines): Remove $(aeabi_routines). * sysdeps/arm/eabi/Versions (GLIBC_2.4): Add ARM EABI portability routines. * sysdeps/arm/eabi/aeabi_assert.c, sysdeps/arm/eabi/aeabi_atexit.c, sysdeps/arm/eabi/aeabi_errno_addr.c, sysdeps/arm/eabi/aeabi_localeconv.c, sysdeps/arm/eabi/aeabi_mb_cur_max.c, sysdeps/arm/eabi/aeabi_memclr.c, sysdeps/arm/eabi/aeabi_memcpy.c, sysdeps/arm/eabi/aeabi_memmove.c, sysdeps/arm/eabi/aeabi_memset.c: Remove attribute_hidden. --- ChangeLog.arm | 13 +++++++++++++ sysdeps/arm/eabi/Makefile | 2 +- sysdeps/arm/eabi/Versions | 11 +++++++++++ sysdeps/arm/eabi/aeabi_assert.c | 4 ++-- sysdeps/arm/eabi/aeabi_atexit.c | 2 +- sysdeps/arm/eabi/aeabi_errno_addr.c | 3 +-- sysdeps/arm/eabi/aeabi_localeconv.c | 3 +-- sysdeps/arm/eabi/aeabi_mb_cur_max.c | 4 ++-- sysdeps/arm/eabi/aeabi_memclr.c | 6 +++--- sysdeps/arm/eabi/aeabi_memcpy.c | 6 +++--- sysdeps/arm/eabi/aeabi_memmove.c | 6 +++--- sysdeps/arm/eabi/aeabi_memset.c | 6 +++--- 12 files changed, 44 insertions(+), 22 deletions(-) diff --git a/ChangeLog.arm b/ChangeLog.arm index 38bfdf06e0..5a2725060f 100644 --- a/ChangeLog.arm +++ b/ChangeLog.arm @@ -1,3 +1,16 @@ +2005-10-31 Daniel Jacobowitz + + * sysdeps/arm/eabi/Makefile (static-only-routines): Remove + $(aeabi_routines). + * sysdeps/arm/eabi/Versions (GLIBC_2.4): Add ARM EABI portability + routines. + * sysdeps/arm/eabi/aeabi_assert.c, sysdeps/arm/eabi/aeabi_atexit.c, + sysdeps/arm/eabi/aeabi_errno_addr.c, + sysdeps/arm/eabi/aeabi_localeconv.c, + sysdeps/arm/eabi/aeabi_mb_cur_max.c, sysdeps/arm/eabi/aeabi_memclr.c, + sysdeps/arm/eabi/aeabi_memcpy.c, sysdeps/arm/eabi/aeabi_memmove.c, + sysdeps/arm/eabi/aeabi_memset.c: Remove attribute_hidden. + 2005-10-31 Daniel Jacobowitz * sysdeps/unix/sysv/linux/arm/bits/mman.h (MREMAP_FIXED): Define. diff --git a/sysdeps/arm/eabi/Makefile b/sysdeps/arm/eabi/Makefile index 34b0027e35..0f92d7ad42 100644 --- a/sysdeps/arm/eabi/Makefile +++ b/sysdeps/arm/eabi/Makefile @@ -5,7 +5,7 @@ aeabi_routines = aeabi_assert aeabi_localeconv aeabi_errno_addr \ aeabi_memmove aeabi_memset sysdep_routines += $(aeabi_constants) $(aeabi_routines) -static-only-routines += $(aeabi_constants) $(aeabi_routines) +static-only-routines += $(aeabi_constants) # get offset to rtld_global._dl_hwcap gen-as-const-headers += rtld-global-offsets.sym diff --git a/sysdeps/arm/eabi/Versions b/sysdeps/arm/eabi/Versions index 6d7a73421a..ca51099cd4 100644 --- a/sysdeps/arm/eabi/Versions +++ b/sysdeps/arm/eabi/Versions @@ -1,5 +1,16 @@ libc { GLIBC_2.4 { + # ARM EABI compatibility routines + __aeabi_assert; + __aeabi_atexit; + __aeabi_errno_addr; + __aeabi_localeconv; + __aeabi_MB_CUR_MAX; + __aeabi_memclr; __aeabi_memclr4; __aeabi_memclr8; + __aeabi_memcpy; __aeabi_memcpy4; __aeabi_memcpy8; + __aeabi_memmove; __aeabi_memmove4; __aeabi_memmove8; + __aeabi_memset; __aeabi_memset4; __aeabi_memset8; + # Helper routines __gnu_Unwind_Find_exidx; } diff --git a/sysdeps/arm/eabi/aeabi_assert.c b/sysdeps/arm/eabi/aeabi_assert.c index ccedbe609b..14801c2643 100644 --- a/sysdeps/arm/eabi/aeabi_assert.c +++ b/sysdeps/arm/eabi/aeabi_assert.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2004 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -19,7 +19,7 @@ #include #include -void attribute_hidden +void __aeabi_assert (const char *assertion, const char *file, unsigned int line) { diff --git a/sysdeps/arm/eabi/aeabi_atexit.c b/sysdeps/arm/eabi/aeabi_atexit.c index b12cda48e2..697f54ce9e 100644 --- a/sysdeps/arm/eabi/aeabi_atexit.c +++ b/sysdeps/arm/eabi/aeabi_atexit.c @@ -21,7 +21,7 @@ /* Register a function to be called by exit or when a shared library is unloaded. This routine is like __cxa_atexit, but uses the calling sequence required by the ARM EABI. */ -int attribute_hidden +int __aeabi_atexit (void *arg, void (*func) (void *), void *d) { return __cxa_atexit (func, arg, d); diff --git a/sysdeps/arm/eabi/aeabi_errno_addr.c b/sysdeps/arm/eabi/aeabi_errno_addr.c index 748edd3ba1..09bdc1efe5 100644 --- a/sysdeps/arm/eabi/aeabi_errno_addr.c +++ b/sysdeps/arm/eabi/aeabi_errno_addr.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2004 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,7 +18,6 @@ #include -attribute_hidden volatile int * __aeabi_errno_addr (void) { diff --git a/sysdeps/arm/eabi/aeabi_localeconv.c b/sysdeps/arm/eabi/aeabi_localeconv.c index 2dd82df218..f4e51d02e8 100644 --- a/sysdeps/arm/eabi/aeabi_localeconv.c +++ b/sysdeps/arm/eabi/aeabi_localeconv.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2004 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,7 +18,6 @@ #include -attribute_hidden struct lconv * __aeabi_localeconv (void) { diff --git a/sysdeps/arm/eabi/aeabi_mb_cur_max.c b/sysdeps/arm/eabi/aeabi_mb_cur_max.c index 62e4c4bba0..866da795d9 100644 --- a/sysdeps/arm/eabi/aeabi_mb_cur_max.c +++ b/sysdeps/arm/eabi/aeabi_mb_cur_max.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2004 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -21,7 +21,7 @@ #include #include -int attribute_hidden +int __aeabi_MB_CUR_MAX (void) { return MB_CUR_MAX; diff --git a/sysdeps/arm/eabi/aeabi_memclr.c b/sysdeps/arm/eabi/aeabi_memclr.c index 8add8afcea..986de85edd 100644 --- a/sysdeps/arm/eabi/aeabi_memclr.c +++ b/sysdeps/arm/eabi/aeabi_memclr.c @@ -20,12 +20,12 @@ /* Clear memory. Can't alias to bzero because it's not defined in the same translation unit. */ -void attribute_hidden +void __aeabi_memclr (void *dest, size_t n) { __bzero (dest, n); } /* Versions of the above which may assume memory alignment. */ -strong_alias (__aeabi_memclr, attribute_hidden __aeabi_memclr4) -strong_alias (__aeabi_memclr, attribute_hidden __aeabi_memclr8) +strong_alias (__aeabi_memclr, __aeabi_memclr4) +strong_alias (__aeabi_memclr, __aeabi_memclr8) diff --git a/sysdeps/arm/eabi/aeabi_memcpy.c b/sysdeps/arm/eabi/aeabi_memcpy.c index d7cd40313e..7d7c47ba3c 100644 --- a/sysdeps/arm/eabi/aeabi_memcpy.c +++ b/sysdeps/arm/eabi/aeabi_memcpy.c @@ -21,12 +21,12 @@ /* Copy memory like memcpy, but no return value required. Can't alias to memcpy because it's not defined in the same translation unit. */ -void attribute_hidden +void __aeabi_memcpy (void *dest, const void *src, size_t n) { memcpy (dest, src, n); } /* Versions of the above which may assume memory alignment. */ -strong_alias (__aeabi_memcpy, attribute_hidden __aeabi_memcpy4) -strong_alias (__aeabi_memcpy, attribute_hidden __aeabi_memcpy8) +strong_alias (__aeabi_memcpy, __aeabi_memcpy4) +strong_alias (__aeabi_memcpy, __aeabi_memcpy8) diff --git a/sysdeps/arm/eabi/aeabi_memmove.c b/sysdeps/arm/eabi/aeabi_memmove.c index 32ed3b1383..b2a4e35318 100644 --- a/sysdeps/arm/eabi/aeabi_memmove.c +++ b/sysdeps/arm/eabi/aeabi_memmove.c @@ -21,12 +21,12 @@ /* Copy memory like memmove, but no return value required. Can't alias to memmove because it's not defined in the same translation unit. */ -void attribute_hidden +void __aeabi_memmove (void *dest, const void *src, size_t n) { memmove (dest, src, n); } /* Versions of the above which may assume memory alignment. */ -strong_alias (__aeabi_memmove, attribute_hidden __aeabi_memmove4) -strong_alias (__aeabi_memmove, attribute_hidden __aeabi_memmove8) +strong_alias (__aeabi_memmove, __aeabi_memmove4) +strong_alias (__aeabi_memmove, __aeabi_memmove8) diff --git a/sysdeps/arm/eabi/aeabi_memset.c b/sysdeps/arm/eabi/aeabi_memset.c index d7232af398..ed38bdea5f 100644 --- a/sysdeps/arm/eabi/aeabi_memset.c +++ b/sysdeps/arm/eabi/aeabi_memset.c @@ -20,12 +20,12 @@ /* Set memory like memset, but different argument order and no return value required. */ -void attribute_hidden +void __aeabi_memset (void *dest, size_t n, int c) { memset (dest, c, n); } /* Versions of the above which may assume memory alignment. */ -strong_alias (__aeabi_memset, attribute_hidden __aeabi_memset4) -strong_alias (__aeabi_memset, attribute_hidden __aeabi_memset8) +strong_alias (__aeabi_memset, __aeabi_memset4) +strong_alias (__aeabi_memset, __aeabi_memset8)