From df359a25ba6f6bda06104229fbfe284c1fb30915 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Wed, 27 Jan 2021 09:44:19 +0000 Subject: [PATCH] Revert "Make libc symbols hidden in static PIE" [BZ #27237] This reverts commit 2682695e5c7acf1e60dd3b5c3a14d4e82416262c. Fixes bug 27237. That commit turned out to be too intrusive affecting crt files, test system and benchmark files. They should not be affected, but the build system does not set the MODULE_NAME and LIBC_NONSHARED reliably. --- include/libc-symbols.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/include/libc-symbols.h b/include/libc-symbols.h index f4dd735..ea126ae 100644 --- a/include/libc-symbols.h +++ b/include/libc-symbols.h @@ -434,18 +434,13 @@ for linking") strong_alias(real, name) #endif -#if defined SHARED || defined LIBC_NONSHARED +#if defined SHARED || defined LIBC_NONSHARED \ + || (BUILD_PIE_DEFAULT && IS_IN (libc)) # define attribute_hidden __attribute__ ((visibility ("hidden"))) #else # define attribute_hidden #endif -/* Mark all symbols hidden in static PIE libc to avoid GOT indirections. */ -#if BUILD_PIE_DEFAULT && !defined NO_HIDDEN_EXTERN_FUNC_IN_PIE \ - && IS_IN (libc) && !defined LIBC_NONSHARED -# pragma GCC visibility push(hidden) -#endif - #define attribute_tls_model_ie __attribute__ ((tls_model ("initial-exec"))) #define attribute_relro __attribute__ ((section (".data.rel.ro"))) -- 2.7.4