aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Huang <jserv@0xlab.org>2010-09-27 19:23:06 +0800
committerJim Huang <jserv@0xlab.org>2010-09-27 22:20:59 +0800
commit9d16a79b18f43faebbe8155dbc14896e9b7d8a2e (patch)
treea97ee2e5c5358a4945322a0dbc594168f80b9bcb
parent312be567a03aaf851707a268807ee666b12f8c74 (diff)
downloadbionic-9d16a79b18f43faebbe8155dbc14896e9b7d8a2e.tar.gz
Hide the symbol of helper function __libc_android_abort
Ideally __libc_android_abort would be static, but it could not be because gcc would not allow calling a static function from an asm statement. Instead, using GCC visibility is work around. Change-Id: Ifff6b9957ca3f0fc03c75c3e42582a48d43cefa2
-rw-r--r--libc/include/sys/cdefs_elf.h4
-rw-r--r--libc/unistd/abort.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/libc/include/sys/cdefs_elf.h b/libc/include/sys/cdefs_elf.h
index e051b1d0e..1e5747010 100644
--- a/libc/include/sys/cdefs_elf.h
+++ b/libc/include/sys/cdefs_elf.h
@@ -95,6 +95,10 @@
__asm__(".section _sec\n\t.asciz _str\n\t.previous")
#endif
+/* GCC visibility helper macro */
+#define __LIBC_HIDDEN__ \
+ __attribute__ ((visibility ("hidden")))
+
#define __IDSTRING(_n,_s) __SECTIONSTRING(.ident,_s)
#define __RCSID(_s) __IDSTRING(rcsid,_s)
diff --git a/libc/unistd/abort.c b/libc/unistd/abort.c
index 3e3aab0ea..8b8659b8b 100644
--- a/libc/unistd/abort.c
+++ b/libc/unistd/abort.c
@@ -40,7 +40,7 @@
__libc_android_log_print(ANDROID_LOG_DEBUG, "libc-abort", (format), ##__VA_ARGS__ )
#ifdef __arm__
-void
+__LIBC_HIDDEN__ void
__libc_android_abort(void)
#else
void