diff options
author | Denis Protivensky <dprotivensky@accesssoftek.com> | 2015-05-22 11:23:39 +0000 |
---|---|---|
committer | Denis Protivensky <dprotivensky@accesssoftek.com> | 2015-05-22 11:23:39 +0000 |
commit | 575f7d4f1c1e1d818103e8b6b2c8d69c1f08836f (patch) | |
tree | 2447bd288936bd49172a0bbb1a004c12be1b6554 /llvm/lib/Object | |
parent | 214122cffc2f7f42405253616cae3b50162b0e6c (diff) | |
download | bcm5719-llvm-575f7d4f1c1e1d818103e8b6b2c8d69c1f08836f.tar.gz bcm5719-llvm-575f7d4f1c1e1d818103e8b6b2c8d69c1f08836f.zip |
[ARM] Ability to add GOT and PLTGOT entries for same symbol
These two serve different purpose:
PLTGOT entries are (usually) lazily resolved and serve as trampolines
to correctly call dynamically linked functions. They often have
R_*_JUMP_SLOT dynamic relocation type used.
Simple GOT entries hold other things, one of them may be
R_*_GLOB_DAT to correctly reference global and static data. This
is also used to hold dynamically linked function's address.
To properly handle cases when shared object's function is called
and at the same time its address is taken, we need to be able to have
both GOT and PLTGOT entries bearing different dynamic relocation types
for the same symbol.
llvm-svn: 238015
Diffstat (limited to 'llvm/lib/Object')
0 files changed, 0 insertions, 0 deletions