aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
diff options
context:
space:
mode:
authorAlex Richardson <Alexander.Richardson@cl.cam.ac.uk>2021-07-09 10:04:35 +0100
committerAlex Richardson <Alexander.Richardson@cl.cam.ac.uk>2021-07-09 10:41:40 +0100
commit6d87ca08aed19fd4e975788ffd3d25592447ff8e (patch)
tree53ee6ba4efd67653da5c1007c4c9507d3ea4cadd /lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
parent0c39f82f0b3e9268f7699e62f59f960a1bff89fa (diff)
downloadllvm-6d87ca08aed19fd4e975788ffd3d25592447ff8e.zip
llvm-6d87ca08aed19fd4e975788ffd3d25592447ff8e.tar.gz
llvm-6d87ca08aed19fd4e975788ffd3d25592447ff8e.tar.bz2
[ELF] Refactor DynamicReloc to fix incorrect relocation addends
This patch changes the DynamicReloc class to store an enum instead of the overloaded useSymVA member to make it easier to understand and fix incorrect addends being written in some corner cases. The change is motivated by a follow-up review that checks the value of implicit Elf_Rel addends written to the output file. This patch fixes an incorrect output when using `-z rela` for i386 files with R_386_GOT32 relocations (not that this really matters since it's an unsupported configuration). Storing the relocation expression kind also addresses an incorrect addend FIXME in ppc64-abs64-dyn.s introduced in D63383. DynamicReloc now also has a special case for the MIPS TLS relocations (DynamicReloc::AgainstSymbolWithTargetVA) since the R_MIPS_TLS_TPREL{32/64} the symbol VA to the GOT for preemptible symbols. I'm not sure if the symbol value actually should be written for R_MIPS_TLS_TPREL32, but this patch does not attempt to change that behaviour. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D100490
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h')
0 files changed, 0 insertions, 0 deletions