[all-commits] [llvm/llvm-project] 5feb80: [dsymutil] Fix double relocation of DW_AT_call_ret...
Jonas Devlieghere via All-commits
all-commits at lists.llvm.org
Thu Feb 13 17:46:08 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 5feb80e748924606531ba28c97fe65145c65372e
https://github.com/llvm/llvm-project/commit/5feb80e748924606531ba28c97fe65145c65372e
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2020-02-13 (Thu, 13 Feb 2020)
Changed paths:
M llvm/include/llvm/DWARFLinker/DWARFLinker.h
M llvm/lib/DWARFLinker/DWARFLinker.cpp
A llvm/test/tools/dsymutil/Inputs/private/tmp/call_return_pc/call
A llvm/test/tools/dsymutil/Inputs/private/tmp/call_return_pc/call.o
A llvm/test/tools/dsymutil/X86/call-site-entry-reloc.test
Log Message:
-----------
[dsymutil] Fix double relocation of DW_AT_call_return_pc
When the DW_AT_call_return_pc matches a relocation, the call return pc
would get relocated twice, once because of the relocation in the object
file and once because of dsymutil. The same problem exists for the low
and high PC and the fix is the same. We remember the low, high and
return pc of the original DIE and relocate that, rather than the
potentially already relocated value.
Reviewed offline by Fred Riss.
More information about the All-commits
mailing list