freebsd-nq/contrib/llvm
Ed Maste 3dd7b92917 lld: do not round up PT_GNU_RELRO p_memsz
The change was made to support glibc and believed to be a no-op on
FreeBSD, but that is not the case for architectures with multiple page
sizes, such as arm64. The relro p_memsz header was rounded up to the
default maximum page size (64K). When 4K pages are in use, multiple
pages beyond the final PT_LOAD segment had their permissions changed to
read-only after application of relocations and copy relocations, which
led to a segfault in certain cases.

This reverts upstream r290986. I have started a discussion about the
upstream fix on the LLVM mailing list.

Reported by:	andrew
Sponsored by:	The FreeBSD Foundation
2017-01-27 16:53:53 +00:00
..
include Pull in r292133 from upstream llvm trunk (by Hal Finkel): 2017-01-16 19:53:18 +00:00
lib Merge llvm, clang, compiler-rt, libc++, lld and lldb release_40 branch 2017-01-24 19:56:22 +00:00
patches Undo r289072, which reverted upstream llvm trunk r240144. This is going 2016-01-16 17:57:54 +00:00
projects/libunwind libunwind: add noexec stack annotation 2017-01-07 14:40:58 +00:00
tools lld: do not round up PT_GNU_RELRO p_memsz 2017-01-27 16:53:53 +00:00
utils/TableGen Update llvm to trunk r290819 and resolve conflicts. 2017-01-02 21:25:48 +00:00
FREEBSD-Xlist Update FREEBSD-Xlist files for llvm and clang. 2015-05-27 20:58:54 +00:00
LICENSE.TXT Merge llvm, clang, lld and lldb release_40 branch r292009. Also update 2017-01-14 22:12:13 +00:00