Fix unwind info relocation with large code model on AArch64
authorValentin Churavy <v.churavy@gmail.com>
Fri, 6 Nov 2020 19:26:04 +0000 (14:26 -0500)
committerJameson Nash <vtjnash@gmail.com>
Fri, 6 Nov 2020 19:41:30 +0000 (14:41 -0500)
commit18805ea951be02fcab6e7b11c3c7d929bcf1441a
tree3e1e43b3d0d3eac5b77f2fa5df467df77016dcf0
parent573ade4bef005a36dc02f2df0b3fcb57ef7b6a72
Fix unwind info relocation with large code model on AArch64

Makes sure that the unwind info uses 64bits pcrel relocation if a large code model is specified and handle the corresponding relocation in the ExecutionEngine. This can happen with certain kernel configuration (the same as the one in https://reviews.llvm.org/D27609, found at least on the ArchLinux stock kernel and the one used on https://www.packet.net/) using the builtin JIT memory manager.

Co-authored-by: Yichao Yu <yyc1992@gmail.com>
Differential Revision: https://reviews.llvm.org/D27629
llvm/lib/MC/MCObjectFileInfo.cpp
llvm/test/MC/AArch64/ELF_ARM64_large-relocations.s [new file with mode: 0644]