diff options
author | Fangrui Song <maskray@google.com> | 2022-04-26 09:26:22 -0700 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2022-04-26 09:26:22 -0700 |
commit | 098a657fe449a217cf65c5270d5fbc8d40b5b4e6 (patch) | |
tree | 3721fb17b7746c4dfbe411439f84699f7e6c17a3 /sysdeps/aarch64 | |
parent | e465d97653311c3687aee49de782177353acfe86 (diff) | |
download | glibc-098a657fe449a217cf65c5270d5fbc8d40b5b4e6.tar.gz glibc-098a657fe449a217cf65c5270d5fbc8d40b5b4e6.tar.xz glibc-098a657fe449a217cf65c5270d5fbc8d40b5b4e6.zip |
elf: Replace PI_STATIC_AND_HIDDEN with opposite HIDDEN_VAR_NEEDS_DYNAMIC_RELOC
PI_STATIC_AND_HIDDEN indicates whether accesses to internal linkage variables and hidden visibility variables in a shared object (ld.so) need dynamic relocations (usually R_*_RELATIVE). PI (position independent) in the macro name is a misnomer: a code sequence using GOT is typically position-independent as well, but using dynamic relocations does not meet the requirement. Not defining PI_STATIC_AND_HIDDEN is legacy and we expect that all new ports will define PI_STATIC_AND_HIDDEN. Current ports defining PI_STATIC_AND_HIDDEN are more than the opposite. Change the configure default. No functional change. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'sysdeps/aarch64')
-rw-r--r-- | sysdeps/aarch64/configure | 5 | ||||
-rw-r--r-- | sysdeps/aarch64/configure.ac | 4 |
2 files changed, 0 insertions, 9 deletions
diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure index 4c1fac49f3..bf972122b1 100644 --- a/sysdeps/aarch64/configure +++ b/sysdeps/aarch64/configure @@ -1,11 +1,6 @@ # This file is generated from configure.ac by Autoconf. DO NOT EDIT! # Local configure fragment for sysdeps/aarch64. -# Static and hidden objects are accessed without dynamic relocations. -# The exception is -mcmodel=large which is unsupported with PIC/PIE. -$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h - - # Static PIE is supported. $as_echo "#define SUPPORT_STATIC_PIE 1" >>confdefs.h diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac index 3347c13fa1..51253d9802 100644 --- a/sysdeps/aarch64/configure.ac +++ b/sysdeps/aarch64/configure.ac @@ -1,10 +1,6 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/aarch64. -# Static and hidden objects are accessed without dynamic relocations. -# The exception is -mcmodel=large which is unsupported with PIC/PIE. -AC_DEFINE(PI_STATIC_AND_HIDDEN) - # Static PIE is supported. AC_DEFINE(SUPPORT_STATIC_PIE) |