about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>2015-12-09 18:48:04 -0200
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>2015-12-22 15:41:19 -0200
commitc676e659395f145e45b08fe3bba90c29ab44e8b8 (patch)
tree742eb357d69120d95ef278a37eec91ee03b9e9c6 /sysdeps
parentb1f19b8ef1003f202424ca222003a18b880bf914 (diff)
downloadglibc-c676e659395f145e45b08fe3bba90c29ab44e8b8.tar.gz
glibc-c676e659395f145e45b08fe3bba90c29ab44e8b8.tar.xz
glibc-c676e659395f145e45b08fe3bba90c29ab44e8b8.zip
powerpc: Export __parse_hwcap_and_convert_at_platform to libc.a.
Commit 67385a01d229751569b6aac067ffdcd813a15d7a added a new feature for
powerpc, where we store HWCAP/Platform bits in the TCB.  In the dynamic
linking case, we use the versioned symbol
'__parse_hwcap_and_convert_at_platform' to verify if this feature is
available.  However, the same symbol was not exported to libc.a, making
it not possible for GCC to check for it prior to link time.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/powerpc/hwcapinfo.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sysdeps/powerpc/hwcapinfo.c b/sysdeps/powerpc/hwcapinfo.c
index a115ffccd9..b885f1cff6 100644
--- a/sysdeps/powerpc/hwcapinfo.c
+++ b/sysdeps/powerpc/hwcapinfo.c
@@ -74,3 +74,11 @@ __tcb_parse_hwcap_and_convert_at_platform (void)
 versioned_symbol (ld, __tcb_parse_hwcap_and_convert_at_platform, \
 		  __parse_hwcap_and_convert_at_platform, GLIBC_2_23);
 #endif
+
+/* Export __parse_hwcap_and_convert_at_platform in libc.a.  This is used by
+   GCC to make sure that the HWCAP/Platform bits are stored in the TCB when
+   using __builtin_cpu_is()/__builtin_cpu_supports() in the static case.  */
+#ifndef SHARED
+weak_alias (__tcb_parse_hwcap_and_convert_at_platform, \
+	    __parse_hwcap_and_convert_at_platform);
+#endif