]> granicus.if.org Git - clang/commitdiff
Objective-C driver. Do not use legacy dispatch for
authorFariborz Jahanian <fjahanian@apple.com>
Wed, 5 Feb 2014 17:13:42 +0000 (17:13 +0000)
committerFariborz Jahanian <fjahanian@apple.com>
Wed, 5 Feb 2014 17:13:42 +0000 (17:13 +0000)
10.5 or less for x86_64 arch. // rdar://15852259

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

include/clang/Basic/ObjCRuntime.h
test/Driver/darwin-objc-defaults.m

index f65cc9345c23be20b3d6c58aa82f829213f6b9d1..fa375f4e183ef7f49525ec3357db788fa6a4aad6 100644 (file)
@@ -100,10 +100,10 @@ public:
         return false;
     }
     else if ((getKind() ==  MacOSX) && isNonFragile() &&
-             (getVersion() >= VersionTuple(10, 5)) &&
+             (getVersion() >= VersionTuple(10, 0)) &&
              (getVersion() < VersionTuple(10, 6)))
         return Arch != llvm::Triple::x86_64;
-    // Except for deployment target of 10.5,
+    // Except for deployment target of 10.5 or less,
     // Mac runtimes use legacy dispatch everywhere now.
     return true;
   }
index 6f5ed87d286a2cac07f4c9ec2c3cab378621574a..1b3f7a844445ded5f167b5b328b6cebad093123d 100644 (file)
 
 // x86_64
 
+// RUN: %clang -target x86_64-apple-darwin10 -S -### %s \
+// RUN:   -arch x86_64 -mmacosx-version-min=10.4 2> %t
+// RUN: FileCheck --check-prefix CHECK-CHECK-X86_64_OSX10_4 < %t %s
+
+// CHECK-CHECK-X86_64_OSX10_4: "-cc1"
+// CHECK-CHECK-X86_64_OSX10_4: -fobjc-dispatch-method=non-legacy
+
 // RUN: %clang -target x86_64-apple-darwin10 -S -### %s \
 // RUN:   -arch x86_64 -mmacosx-version-min=10.5 2> %t
 // RUN: FileCheck --check-prefix CHECK-CHECK-X86_64_OSX10_5 < %t %s
 
+
 // CHECK-CHECK-X86_64_OSX10_5: "-cc1"
 // CHECK-CHECK-X86_64_OSX10_5: -fobjc-runtime=macosx-10.5
 // CHECK-CHECK-X86_64_OSX10_5: -fobjc-dispatch-method=non-legacy