]> granicus.if.org Git - clang/commitdiff
[CodeGen][ObjC] Emit objc_unsafeClaimAutoreleasedReturnValue for
authorAkira Hatanaka <ahatanaka@apple.com>
Tue, 13 Dec 2016 23:32:22 +0000 (23:32 +0000)
committerAkira Hatanaka <ahatanaka@apple.com>
Tue, 13 Dec 2016 23:32:22 +0000 (23:32 +0000)
fragile runtime too.

Follow-up to r258962.

rdar://problem/29269006

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@289615 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/ObjCRuntime.h
test/CodeGenObjC/arc-unsafeclaim.m

index 6975b6c9bb9e017f092c99f9b4b55f13177ccb2a..78fc899882456d70d6d23b742e2b0148654c2227 100644 (file)
@@ -312,6 +312,7 @@ public:
   bool hasARCUnsafeClaimAutoreleasedReturnValue() const {
     switch (getKind()) {
     case MacOSX:
+    case FragileMacOSX:
       return getVersion() >= VersionTuple(10, 11);
     case iOS:
       return getVersion() >= VersionTuple(9);
index cda00b0a2f5e0de7e214fdffcdd9c93877c55416..fd8215c2039e596acfe8be3a4d22326678ba5c5a 100644 (file)
@@ -1,6 +1,9 @@
 //   Make sure it works on x86-64.
 // RUN: %clang_cc1 -triple x86_64-apple-darwin11 -fobjc-runtime=macosx-10.11 -fobjc-arc -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-UNOPTIMIZED
 
+//   Make sure it works on x86-32.
+// RUN: %clang_cc1 -triple i386-apple-darwin11 -fobjc-runtime=macosx-fragile-10.11 -fobjc-arc -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-UNOPTIMIZED -check-prefix=CHECK-MARKED
+
 //   Make sure it works on ARM.
 // RUN: %clang_cc1 -triple arm64-apple-ios9 -fobjc-runtime=ios-9.0 -fobjc-arc -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-UNOPTIMIZED -check-prefix=CHECK-MARKED
 // RUN: %clang_cc1 -triple arm64-apple-ios9 -fobjc-runtime=ios-9.0 -fobjc-arc -O -disable-llvm-optzns -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-OPTIMIZED