glibc/ports/sysdeps/unix/sysv/linux
Will Newton b7f2d27dbd ARM: Add pointer encryption support.
Add support for pointer encryption in glibc internal structures in C
and assembler code. Pointer encryption is a glibc security feature
described here:

https://sourceware.org/glibc/wiki/PointerEncryption

The ARM implementation uses global variables instead of thread pointer
relative accesses to get the value of the pointer encryption guard
because accessing the thread pointer can be very expensive on older
ARM cores.

ports/ChangeLog.arm:

2013-10-03  Will Newton  <will.newton@linaro.org>

	* sysdeps/arm/__longjmp.S (__longjmp): Demangle fp, sp
	and lr when restoring register values.
	* sysdeps/arm/include/bits/setjmp.h (JMP_BUF_REGLIST): Remove
	sp and lr from list and replace fp with a4.
	* sysdeps/arm/jmpbuf-unwind.h (_jmpbuf_sp): New function.
	(_JMPBUF_UNWINDS_ADJ): Call _jmpbuf_sp.
	* sysdeps/arm/setjmp.S (__sigsetjmp): Mangle fp, sp and lr
	before storing register values.
	* sysdeps/arm/sysdep.h (LDST_GLOBAL): New macro.
	* sysdeps/unix/sysv/linux/arm/sysdep.h (PTR_MANGLE): New macro.
	(PTR_DEMANGLE): Likewise. (PTR_MANGLE2): Likewise.
	(PTR_DEMANGLE2): Likewise.
2013-10-03 11:35:50 +01:00
..
aarch64 [AArch64] Fix BE access to errno. 2013-09-30 10:58:26 +01:00
alpha Add O_TMPFILE to <fcntl.h> 2013-09-11 11:52:46 +02:00
am33 Fix typos. 2013-08-29 09:11:45 +02:00
arm ARM: Add pointer encryption support. 2013-10-03 11:35:50 +01:00
generic Remove trailing whitespace in ports. 2013-06-05 20:26:40 +00:00
hppa Add O_TMPFILE to <fcntl.h> 2013-09-11 11:52:46 +02:00
ia64 Fix typos. 2013-08-30 18:08:59 +02:00
m68k Define MMAP2_PAGE_SHIFT to -1 for m68k. 2013-09-04 20:50:20 +00:00
microblaze New API to set default thread attributes 2013-06-15 12:24:15 +05:30
mips MIPS: IEEE 754-2008 NaN encoding support 2013-09-18 21:33:50 +01:00
powerpc/powerpc32 New API to set default thread attributes 2013-06-15 12:24:15 +05:30
tile tile: add missing semicolon in <bits/ptrace.h> 2013-07-19 13:06:30 -04:00