summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Compilation.cpp
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2018-06-26 17:04:47 +0000
committerFangrui Song <maskray@google.com>2018-06-26 17:04:47 +0000
commit68fa4e8c3407aec92058c560f7a7fc8a36bec0e6 (patch)
tree3427abaaf25acf677dea0348d1b265f087a46ede /clang/lib/Driver/Compilation.cpp
parentcbd8c76b981b3e73f720a3d5b5c37c7033577812 (diff)
downloadbcm5719-llvm-68fa4e8c3407aec92058c560f7a7fc8a36bec0e6.tar.gz
bcm5719-llvm-68fa4e8c3407aec92058c560f7a7fc8a36bec0e6.zip
[ELF] Assign RF_EXEC rank even if --no-rosegment or SECTIONS command is used
Summary: Currently when --no-rosegment is specified or a linker script with SECTIONS command is used, .rodata (A) .text (AX) are assigned the same rank and .rodata may be placed after .text . This increases the gap between .text and .bss and can cause pc-relative relocation overflow (e.g. gcc crtbegin.o crtbegin.S have R_X86_64_PC32 relocation from .text to .bss). This patch makes SingleRoRx affect only segment layout, not section layout. As a consequence, .rodata will be placed before .text regardless of SingleRoRx. Reviewers: espindola, ruiu, grimar, echristo, javed.absar Subscribers: emaste, arichardson, llvm-commits Differential Revision: https://reviews.llvm.org/D48405 llvm-svn: 335627
Diffstat (limited to 'clang/lib/Driver/Compilation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud