diff options
author | George Rimar <grimar@accesssoftek.com> | 2018-04-09 13:01:50 +0000 |
---|---|---|
committer | George Rimar <grimar@accesssoftek.com> | 2018-04-09 13:01:50 +0000 |
commit | 0029f214820d79bf09a9c5c3152012ef9eb4348a (patch) | |
tree | 71d0eca1a5ec7e520eebecea0d9425ffc39564e7 /llvm/lib/Target | |
parent | 9bc20fff4ad2a5bf38e942c9e24ae8a2240ec7e8 (diff) | |
download | bcm5719-llvm-0029f214820d79bf09a9c5c3152012ef9eb4348a.tar.gz bcm5719-llvm-0029f214820d79bf09a9c5c3152012ef9eb4348a.zip |
[ELF] - Stop setting OutSecOff too early.
Currently LLD sets OutSecOff in addSection for input sections.
That is a fake offset (just a rude approximation to remember the order),
used for sorting SHF_LINK_ORDER sections
(see resolveShfLinkOrder, compareByFilePosition).
There are 2 problems with such approach:
1. We currently change and reuse Size field as a value assigned. Changing size is
not good because leads to bugs. Currently, SIZEOF(.bss) for empty .bss returns 2
because we add two empty synthetic sections and increase size twice by 1.
(See PR37011: https://bugs.llvm.org/show_bug.cgi?id=37011)
2. Such approach simply does not work when --symbol-ordering-file is involved,
because processing of the ordering file might break the initial section order.
This fixes PR37011.
Differential revision: https://reviews.llvm.org/D45368
llvm-svn: 329560
Diffstat (limited to 'llvm/lib/Target')
0 files changed, 0 insertions, 0 deletions