From d87ffa679c996f8782b8c6abb20a2064b60dc2c4 Mon Sep 17 00:00:00 2001
From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Date: Tue, 20 Jan 2015 00:09:16 -0800
Subject: [PATCH 1007/1008] Default to fragile ObjC runtime when targeting
 darwin/ppc

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
(cherry picked from commit 70016a68333b2175a1edbbcbad54918496ba391b)
---
 lib/Driver/ToolChains.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git llvm_release_37/tools/clang/lib/Driver/ToolChains.h macports_release_37/tools/clang/lib/Driver/ToolChains.h
index 59eaade..03585e6 100644
--- llvm_release_37/tools/clang/lib/Driver/ToolChains.h
+++ macports_release_37/tools/clang/lib/Driver/ToolChains.h
@@ -271,8 +271,10 @@ public:
   bool IsEncodeExtendedBlockSignatureDefault() const override { return true; }
 
   bool IsObjCNonFragileABIDefault() const override {
-    // Non-fragile ABI is default for everything but i386.
-    return getTriple().getArch() != llvm::Triple::x86;
+    // Non-fragile ABI is default for legacy architectures
+    return getTriple().getArch() != llvm::Triple::x86 &&
+           getTriple().getArch() != llvm::Triple::ppc &&
+           getTriple().getArch() != llvm::Triple::ppc64;
   }
 
   bool UseObjCMixedDispatch() const override { return true; }
-- 
2.10.1

