From 1ee9c19fb95ed483a5dffeb9806d3d9f226dfbf9 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 27 Dec 2014 14:38:15 +0000 Subject: [PATCH] =?UTF-8?q?=EF=BB=BFPull=20in=20r213890=20from=20upstream?= =?UTF-8?q?=20llvm=20trunk=20(by=20J=C3=B6rg=20Sonnenberger):?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use the same .eh_frame encoding for 32bit PPC as on i386. This fixes DT_TEXTREL errors when linking C++ objects using exceptions on PowerPC. --- contrib/llvm/lib/MC/MCObjectFileInfo.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/llvm/lib/MC/MCObjectFileInfo.cpp b/contrib/llvm/lib/MC/MCObjectFileInfo.cpp index d490ef30b69..6b16caa6234 100644 --- a/contrib/llvm/lib/MC/MCObjectFileInfo.cpp +++ b/contrib/llvm/lib/MC/MCObjectFileInfo.cpp @@ -287,6 +287,7 @@ void MCObjectFileInfo::InitELFMCObjectFileInfo(Triple T) { if (Ctx->getAsmInfo()->getExceptionHandlingType() == ExceptionHandling::ARM) break; // Fallthrough if not using EHABI + case Triple::ppc: case Triple::x86: PersonalityEncoding = (RelocM == Reloc::PIC_) ? dwarf::DW_EH_PE_indirect | dwarf::DW_EH_PE_pcrel | dwarf::DW_EH_PE_sdata4