Go to file
Peter Smith 4e21c770ec [ELF] Full support for -n (--nmagic) and -N (--omagic) via common page
The -n (--nmagic) disables page alignment, and acts as a -Bstatic
The -N (--omagic) does what -n does but also marks the executable segment as
writeable. As page alignment is disabled headers are not allocated unless
explicit in the linker script.

To disable page alignment in LLD we choose to set the page sizes to 1 so
that any alignment based on the page size does nothing. To set the
Target->PageSize to 1 we implement -z common-page-size, which has the side
effect of allowing the user to set the value as well.

Setting the page alignments to 1 does mean that any use of
CONSTANT(MAXPAGESIZE) or CONSTANT(COMMONPAGESIZE) in a linker script will
return 1, unlike in ld.bfd. However given that -n and -N disable paging
these probably shouldn't be used in a linker script where -n or -N is in
use.

Differential Revision: https://reviews.llvm.org/D61688

llvm-svn: 360593
2019-05-13 16:01:26 +00:00
clang Revert r360559 "[c++20] P1064R0: Allow virtual function calls in constant expression evaluation." 2019-05-13 13:19:09 +00:00
clang-tools-extra [clang-tidy] new check: bugprone-unhandled-self-assignment 2019-05-12 12:23:56 +00:00
compiler-rt [compiler-rt] Fix crtbegin.c compilation 2019-05-11 02:33:33 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc travis: Add LLVM-8 build 2019-03-27 21:28:31 +00:00
libcxx [libcxx] teach type_traits test about long uint32_t 2019-05-13 15:41:18 +00:00
libcxxabi minor cmake formatting style fix 2019-05-07 13:14:14 +00:00
libunwind [gn] Support for building libunwind 2019-05-02 17:29:37 +00:00
lld [ELF] Full support for -n (--nmagic) and -N (--omagic) via common page 2019-05-13 16:01:26 +00:00
lldb [NativePDB] Fix tests after r360569 2019-05-13 15:06:13 +00:00
llgo IR: Support parsing numeric block ids, and emit them in textual output. 2019-03-22 18:27:13 +00:00
llvm [TargetLowering] Add SimplifyDemandedBits support for ZERO_EXTEND_VECTOR_INREG 2019-05-13 15:51:26 +00:00
openmp [OPENMP][NVPTX]Simplify handling of thread limit, NFC. 2019-05-13 14:21:46 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [ZoneAlgo] Fix PHI inconsistency in invalid contexts. 2019-05-10 18:38:13 +00:00
pstl [pstl] Make the default backend be the serial backend and always provide parallel policies 2019-04-24 20:12:36 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
.gitignore Add a reduced copy of the llvm .gitignore 2019-04-09 00:52:49 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.