glibc/sysdeps
Szabolcs Nagy 8f62ca7328 aarch64: fix pac-ret support in _mcount
Currently gcc -pg -mbranch-protection=pac-ret passes signed return
address to _mcount, so _mcount now has to always strip pac from the
frompc since that's from user code that may be built with pac-ret.

This is gcc PR target/94791: signed pointers should not escape and get
passed across extern call boundaries, since that's an ABI break, but
because existing gcc has this issue we work it around in glibc until
that is resolved. This is compatible with a fixed gcc and it is a nop
on systems without PAuth support. The bug was introduced in gcc-7 with
-msign-return-address=non-leaf|all support which in gcc-9 got renamed
to -mbranch-protection=pac-ret|pac-ret+leaf|standard.

strip_pac uses inline asm instead of __builtin_aarch64_xpaclri since
that is not a documented api and not available in all supported gccs.
2020-06-22 14:53:20 +01:00
..
aarch64 aarch64: fix pac-ret support in _mcount 2020-06-22 14:53:20 +01:00
alpha Update alpha libm-test-ulps 2020-04-08 13:52:45 -03:00
arm Rewrite abi-note.S in C. 2020-06-12 14:34:39 +01:00
csky semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
generic rtld: Rename _rtld_process_pt_note to _dl_process_pt_note 2020-06-22 12:20:43 +01:00
gnu
hppa dl-runtime: reloc_{offset,index} now functions arch overide'able 2020-06-05 13:45:46 -07:00
htl htl: Fix registration of atfork handlers in modules 2020-06-07 23:36:42 +00:00
hurd Hurd: Move <hurd/sigpreempt.h> internals into wrapper header 2020-05-28 11:40:13 +02:00
i386 hurd: fix clearing SS_ONSTACK when longjmp-ing from sighandler 2020-06-06 20:24:30 +02:00
ia64 semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
ieee754 ieee754: provide gcc builtins based generic fma functions 2020-06-03 10:23:28 -07:00
m68k
mach hurd: document that gcc&gdb look at the trampoline code 2020-06-08 14:41:57 +02:00
microblaze semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
mips Rename __LONG_DOUBLE_USES_FLOAT128 to __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 2020-04-30 08:52:08 -05:00
nios2 semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
nptl nptl: Add pthread_attr_setsigmask_np, pthread_attr_getsigmask_np 2020-06-02 11:59:18 +02:00
posix linux: Use internal DIR locks when accessing filepos on telldir 2020-05-27 11:55:00 -03:00
powerpc powerpc64le: add optimized strlen for P9 2020-06-05 15:30:00 -05:00
pthread htl: Enable more cancel tests 2020-06-10 21:34:19 +00:00
riscv semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
s390 ieee754: provide gcc builtins based generic fma functions 2020-06-03 10:23:28 -07:00
sh semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
sparc semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
unix aarch64: enable BTI at runtime 2020-06-22 14:53:10 +01:00
wordsize-32
wordsize-64
x86 rtld: Rename _rtld_process_pt_note to _dl_process_pt_note 2020-06-22 12:20:43 +01:00
x86_64 dl-runtime: reloc_{offset,index} now functions arch overide'able 2020-06-05 13:45:46 -07:00