summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Atanasyan <simon@atanasyan.com>2017-02-15 08:33:03 +0000
committerSimon Atanasyan <simon@atanasyan.com>2017-02-15 08:33:03 +0000
commit91e30ae2052cf1a2f9ec46a5e9a726aaab970f47 (patch)
treeaf3bc2270aa180051cf7cb818144d13ca36bbc52 /llvm/lib
parent35801a2470e9fe5e4a296f12ff86b95ea411b875 (diff)
downloadbcm5719-llvm-91e30ae2052cf1a2f9ec46a5e9a726aaab970f47.tar.gz
bcm5719-llvm-91e30ae2052cf1a2f9ec46a5e9a726aaab970f47.zip
[ELF][MIPS] Fix writing updated addend for R_MIPS_GOT16 relocation
If target of R_MIPS_GOT16 relocation is a local symbol its addend is high 16 bits of complete addend. To calculate a final value, the addend of this relocation is read, shifted to the left and combined with addend of paired R_MIPS_LO16 relocation. To save updated addend when the linker produces a relocatable output, we need to store high 16 bits of the addend's value. It is different from the case of writing the relocation result when the linker saves a 16-bit GOT index as-is. llvm-svn: 295159
Diffstat (limited to 'llvm/lib')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud