diff options
author | Fangrui Song <maskray@google.com> | 2018-11-01 22:28:58 +0000 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2018-11-01 22:28:58 +0000 |
commit | 27d036e9952387dff6eafe009f1769b575148454 (patch) | |
tree | 31400cb0954f4c24159090a2cf78a2f9e73e2f42 /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp | |
parent | a1f048d2abe3ee56d5b310b7eb8f038038df802f (diff) | |
download | bcm5719-llvm-27d036e9952387dff6eafe009f1769b575148454.tar.gz bcm5719-llvm-27d036e9952387dff6eafe009f1769b575148454.zip |
[ELF] Change sh_link of .rel{,a}.plt to make GNU strip happy
Summary:
D52830 sets sh_link to .symtab in static link, which breaks executable stripped by GNU strip.
It may also be odd that .rela.plt (SHF_ALLOC) points to .symtab (non-SHF_ALLOC).
Change the logic on pcc's suggestion.
Before:
% clang -fuse-ld=lld -static -xc =(printf 'int main(){}') # or gcc
% strip a.out; ./a.out
unexpected reloc type in static binary[1] 61634 segmentation fault ./a.out
Reviewers: ruiu, grimar, emaste, espindola
Reviewed By: ruiu
Subscribers: pcc, arichardson, llvm-commits
Differential Revision: https://reviews.llvm.org/D53993
llvm-svn: 345899
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp')
0 files changed, 0 insertions, 0 deletions