glibc/sysdeps/powerpc
Adhemerval Zanella db7dbeed8d Handle clang -Wignored-attributes on weak aliases
Clang issues a warning for double alias redirection, indicating that thei
original symbol is used even if a weak definition attempts to override it.

For instance, in the construction:

  int __internal_impl (...) {}
  weak_alias (__internal_impl, external_impl);
  #if SOMETHING
  weak_alias (external_impl, another_external_impl)
  #endif

Clang warns that another_external_impl always resolves to __internal_impl,
even if external_impl is a weak reference. Using the internal symbol for
both aliases resolves this warning.

This issue also occurs with certain libc_hidden_def usage:

  int __internal_impl (...) {}
  weak_alias (__internal_impl, __internal_alias)
  libc_hidden_weak (__internal_alias)

In this case, using a strong_alias is sufficient to avoid the warning
(since the alias is internal, there is no need to use a weak alias).

However, for the constructions like:

  int __internal_impl (...) {}
  weak_alias (__internal_impl, __internal_alias)
  libc_hidden_def (__internal_alias)
  weak_alias (__internal_impl, external_alias)
  libc_hidden_def (external_alias)

Clang warns that the internal external_alias will always resolve to
__GI___internal_impl eve if a weak definition to __GI_internal_impl is
overriden.  For this case, a new macro named static_weak_alias is used
to create a strong alias for SHARED, or a weak_alias otherwise.

With these changes, there is no need to check and enable the
-Wno-ignored-attributes suppression when using clang.
2025-11-20 14:34:26 -03:00
..
bits Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
fpu math: Don't redirect inlined builtin math functions 2025-11-17 11:17:07 -03:00
nofpu math: Add fetestexcept internal alias 2025-09-11 14:46:07 -03:00
nptl Remove support for lock elision. 2025-11-18 14:21:13 +01:00
power4 Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
power6 Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
powerpc32 Handle clang -Wignored-attributes on weak aliases 2025-11-20 14:34:26 -03:00
powerpc64 Add add_ssaaaa and sub_ssaaaa to gmp-arch.h 2025-11-20 14:34:26 -03:00
sys/platform Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
Makefile i386: Update ___tls_get_addr to preserve vector registers 2025-06-19 04:30:31 +08:00
Versions powerpc: Add space for HWCAP3/HWCAP4 in the TCB for future Power. 2023-12-15 20:20:14 -06:00
abort-instr.h
dl-diagnostics-cpu.c powerpc: Move cache geometry information to ld diagnostics 2025-03-05 11:22:09 -03:00
dl-lookupcfg.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-procinfo.c powerpc: Move AT_HWCAP descriptions to ld diagnostics 2025-03-05 11:22:09 -03:00
dl-tls.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-tls.h elf: Remove the remaining uses of GET_ADDR_OFFSET 2025-01-02 13:45:27 +01:00
dl-tunables.list Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
elf-initfini.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
fpu_control.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
gccframe.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
hwcapinfo.c Remove dl-procinfo.h 2025-03-05 11:22:09 -03:00
hwcapinfo.h powerpc: Remove unused dl-procinfo.h 2025-03-05 11:22:09 -03:00
ifunc-sel.h
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
ldsodefs.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
libc-tls.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
locale-defines.sym
longjmp.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
machine-gmon.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
math-tests-snan-cast.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
math-use-builtins-ffs.h string: Use builtins for ffs and ffsll 2024-02-01 09:31:33 -03:00
mod-cache-ppc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mod-tlsopt-powerpc.c elf/tst-tlsopt-powerpc fails when compiled with -mcpu=power10 (BZ# 29776) 2022-11-14 22:04:25 +10:30
novmx-longjmp.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
novmx-sigjmp.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
novmxsetjmp.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
preconfigure Update copyright in generated files by running "make" 2025-01-01 11:22:09 -08:00
preconfigure.ac powerpc: Placeholder and infrastructure/build support to add Power11 related changes. 2024-03-19 21:11:34 -05:00
rtld-global-offsets.sym
sigjmp.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
string-fza.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
sysdep.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
test-arith.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
test-arithf.c
test-get_hwcap-static.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
test-get_hwcap.c powerpc: Remove unused dl-procinfo.h 2025-03-05 11:22:09 -03:00
test-gettimebase.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
thread_pointer.h Move <thread_pointer.h> to kernel-independent sysdeps directories 2025-01-09 19:30:16 +01:00
tst-cache-ppc-static-dlopen.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cache-ppc-static.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cache-ppc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-set_ppr.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-stack-align.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tlsifunc-static.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tlsifunc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tlsopt-powerpc.c
utmp-size.h login: Check default sizes of structs utmp, utmpx, lastlog 2024-04-19 14:38:17 +02:00