llvm-project/llvm/lib/Object
Artur Pilipenko 3e6590c451 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
2019-09-21 01:37:14 +00:00
..
Archive.cpp [Object] Uncapitalize an error message 2019-09-20 04:40:38 +00:00
ArchiveWriter.cpp [Alignment] Move OffsetToAlignment to Alignment.h 2019-09-12 15:20:36 +00:00
Binary.cpp [Object] Add tapi files to object 2019-08-21 23:30:53 +00:00
CMakeLists.txt [Object] Add tapi files to object 2019-08-21 23:30:53 +00:00
COFFImportFile.cpp [llvm-dlltool] Respect NONAME keyword 2019-05-22 09:49:54 +00:00
COFFModuleDefinition.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
COFFObjectFile.cpp [COFF] Add a ResourceSectionRef method for getting resource contents 2019-08-30 06:55:49 +00:00
Decompressor.cpp Recommit r368812 "[llvm/Object] - Convert SectionRef::getName() to return Expected<>" 2019-08-14 11:10:11 +00:00
ELF.cpp [llvm-readobj][yaml2obj] Support SHT_LLVM_SYMPART, SHT_LLVM_PART_EHDR and SHT_LLVM_PART_PHDR 2019-09-06 00:53:28 +00:00
ELFObjectFile.cpp [ARM] VFPv2 only supports 16 D registers. 2019-09-17 21:42:38 +00:00
Error.cpp [Object] isNotObjectErrorInvalidFileType: simplify 2019-07-13 09:28:33 +00:00
IRObjectFile.cpp Recommit [Object] Change object::SectionRef::getContents() to return Expected<StringRef> 2019-05-16 13:24:04 +00:00
IRSymtab.cpp [ELF] Implement Dependent Libraries Feature 2019-05-17 03:44:15 +00:00
LLVMBuild.txt [Object] Add tapi files to object 2019-08-21 23:30:53 +00:00
MachOObjectFile.cpp [yaml2obj/obj2yaml][MachO] Allow setting custom section data 2019-08-20 08:49:07 +00:00
MachOUniversal.cpp [Object] Extend MachOUniversalBinary::getObjectForArch 2019-09-19 00:02:12 +00:00
Minidump.cpp Minidump: Add support for the MemoryList stream 2019-05-16 15:17:30 +00:00
ModuleSymbolTable.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Object.cpp [Object] Extend MachOUniversalBinary::getObjectForArch 2019-09-19 00:02:12 +00:00
ObjectFile.cpp Recommit r370661 "[llvm-nm] - Add a test case for case when we dump a symbol that belongs to a section with a broken sh_name." 2019-09-02 14:57:35 +00:00
RecordStreamer.cpp [AsmPrinter] Remove hidden flag -print-schedule. 2019-02-04 12:51:26 +00:00
RecordStreamer.h [AsmPrinter] Remove hidden flag -print-schedule. 2019-02-04 12:51:26 +00:00
RelocationResolver.cpp Support for 64-bit PC-relative relocations for X86_64 2019-09-21 01:37:14 +00:00
SymbolSize.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SymbolicFile.cpp [BinaryFormat] Teach identify_magic about Tapi files. 2019-08-21 21:00:16 +00:00
TapiFile.cpp [TextAPI] Arch&Platform to Target 2019-09-20 14:32:34 +00:00
TapiUniversal.cpp [Object] Add tapi files to object 2019-08-21 23:30:53 +00:00
WasmObjectFile.cpp [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
WindowsMachineFlag.cpp Share /machine: handling code with llvm-cvtres too 2019-06-12 11:32:43 +00:00
WindowsResource.cpp [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
XCOFFObjectFile.cpp [XCOFF][AIX] Generate symbol table entries with llvm-readobj 2019-08-27 18:54:46 +00:00