diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2016-04-22 20:21:26 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2016-04-22 20:21:26 +0000 |
commit | 66ac1d61526268d1f81db8ed1d5caccfed2452ec (patch) | |
tree | bf5c38f8b3876f120bcda9b8585ae73166fcb823 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | e2eb5f837be29eaa9459ce62887df83e058c6acf (diff) | |
download | llvm-66ac1d61526268d1f81db8ed1d5caccfed2452ec.zip llvm-66ac1d61526268d1f81db8ed1d5caccfed2452ec.tar.gz llvm-66ac1d61526268d1f81db8ed1d5caccfed2452ec.tar.bz2 |
ELF: Implement basic support for --version-script.
This patch only implements support for version scripts of the form:
{ [ global: symbol1; symbol2; [...]; symbolN; ] local: *; };
No wildcards are supported, other than for the local entry. Symbol versioning
is also not supported.
It works by introducing a new Symbol flag which tracks whether a symbol
appears in the global section of a version script.
This patch also simplifies the logic in SymbolBody::isPreemptible(), and
teaches it to handle the case where symbols with default visibility in DSOs
do not appear in the dynamic symbol table because of a version script.
Fixes PR27482.
Differential Revision: http://reviews.llvm.org/D19430
llvm-svn: 267208
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions