aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCObjectFileInfo.cpp
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2018-03-24 00:07:38 +0000
committerEric Christopher <echristo@gmail.com>2018-03-24 00:07:38 +0000
commitfe6e6d93d9bb4c31283965bb12560b756910303d (patch)
tree01110b81eab8360c359f3e346d597a66ef37327f /llvm/lib/MC/MCObjectFileInfo.cpp
parent53f51c1df8e8c5895d771190325921f6743fb196 (diff)
downloadllvm-fe6e6d93d9bb4c31283965bb12560b756910303d.zip
llvm-fe6e6d93d9bb4c31283965bb12560b756910303d.tar.gz
llvm-fe6e6d93d9bb4c31283965bb12560b756910303d.tar.bz2
Allow FDE references outside the +/-2GB range supported by PC relative
offsets for code models other than small/medium. For JIT application, memory layout is less controlled and can result in truncations otherwise. Patch based on one by Olexa Bilaniuk! llvm-svn: 328400
Diffstat (limited to 'llvm/lib/MC/MCObjectFileInfo.cpp')
-rw-r--r--llvm/lib/MC/MCObjectFileInfo.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCObjectFileInfo.cpp b/llvm/lib/MC/MCObjectFileInfo.cpp
index 4eebda6..83da8ac 100644
--- a/llvm/lib/MC/MCObjectFileInfo.cpp
+++ b/llvm/lib/MC/MCObjectFileInfo.cpp
@@ -292,6 +292,8 @@ void MCObjectFileInfo::initELFMCObjectFileInfo(const Triple &T, bool Large) {
case Triple::mips64el:
FDECFIEncoding = dwarf::DW_EH_PE_sdata8;
break;
+ case Triple::ppc64:
+ case Triple::ppc64le:
case Triple::x86_64:
FDECFIEncoding = dwarf::DW_EH_PE_pcrel |
(Large ? dwarf::DW_EH_PE_sdata8 : dwarf::DW_EH_PE_sdata4);