diff options
author | Artur Pilipenko <apilipenko@azulsystems.com> | 2019-09-21 01:37:14 +0000 |
---|---|---|
committer | Artur Pilipenko <apilipenko@azulsystems.com> | 2019-09-21 01:37:14 +0000 |
commit | 3e6590c45177958030513e6be199fc2d54f13ac7 (patch) | |
tree | b7e8402f330ef05fdd21cb7b26392bdb5a290c8f /clang/lib/Analysis/ReachableCode.cpp | |
parent | c96d5545f0c97b3ad88672a09a4feeb7256ce2cb (diff) | |
download | llvm-3e6590c45177958030513e6be199fc2d54f13ac7.zip llvm-3e6590c45177958030513e6be199fc2d54f13ac7.tar.gz llvm-3e6590c45177958030513e6be199fc2d54f13ac7.tar.bz2 |
Support for 64-bit PC-relative relocations for X86_64
ELF files generated for X86_64 targets may contain 64-bit PC-relative
relocations. For instance, an exception handler table entry contains the start
of exception-throwing frame relative to the start of exception handler. As these
two labels belong to different sections, their difference and so the relocation
is 64-bit.
An attempt to parse such file, i.e. in DWARFContext::create, results in "failed
to compute relocation" error.
This fix adds support for such relocations to RelocationResolver.cpp.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D67779
Patch by Oleg Pliss (Oleg.Pliss@azul.com)
llvm-svn: 372447
Diffstat (limited to 'clang/lib/Analysis/ReachableCode.cpp')
0 files changed, 0 insertions, 0 deletions