Author: yueshe
Date: 2026-06-12T09:47:14+02:00
New Revision: 5ea65dfac0023ca82b8961f188d574c228657d22

URL: 
https://github.com/llvm/llvm-project/commit/5ea65dfac0023ca82b8961f188d574c228657d22
DIFF: 
https://github.com/llvm/llvm-project/commit/5ea65dfac0023ca82b8961f188d574c228657d22.diff

LOG: Revert "[clang][Darwin] Disable ObjC class selector stubs when using LLD" 
(#203456)

Reverts llvm/llvm-project#203388

Unfortunately this breaks a bunch of tests on CI bots because they seem
to have LLD configured as the default linker. The tests were originally
written to expect `-fobjc-msgsend-class-selector-stubs`. Will have to
modify the tests as well

Added: 
    

Modified: 
    clang/lib/Driver/ToolChains/Darwin.cpp
    clang/test/Driver/darwin-objc-selector-stubs.m

Removed: 
    


################################################################################
diff  --git a/clang/lib/Driver/ToolChains/Darwin.cpp 
b/clang/lib/Driver/ToolChains/Darwin.cpp
index 0144006b165a7..59744d1cb3e8c 100644
--- a/clang/lib/Driver/ToolChains/Darwin.cpp
+++ b/clang/lib/Driver/ToolChains/Darwin.cpp
@@ -3517,17 +3517,13 @@ void Darwin::addClangTargetOptions(
       (getLinkerVersion(DriverArgs) >= VersionTuple(811, 2)))
     CC1Args.push_back("-fobjc-msgsend-selector-stubs");
 
-  bool LinkerIsLLD = false;
-  GetLinkerPath(&LinkerIsLLD);
-
   // Enable objc_msgSend class selector stubs by default if the linker supports
   // it. ld64-1250+ does, for arm64, arm64e, and arm64_32.
-  // FIXME(#203385): LLD doesn't support ObjC class selector stubs yet.
   if (!DriverArgs.hasArgNoClaim(
           options::OPT_fobjc_msgsend_class_selector_stubs,
           options::OPT_fno_objc_msgsend_class_selector_stubs) &&
       getTriple().isAArch64() &&
-      (getLinkerVersion(DriverArgs) >= VersionTuple(1250, 0)) && !LinkerIsLLD)
+      (getLinkerVersion(DriverArgs) >= VersionTuple(1250, 0)))
     CC1Args.push_back("-fobjc-msgsend-class-selector-stubs");
 
   // Pass "-fno-sized-deallocation" only when the user hasn't manually enabled

diff  --git a/clang/test/Driver/darwin-objc-selector-stubs.m 
b/clang/test/Driver/darwin-objc-selector-stubs.m
index b508bda687830..b4a23ce768586 100644
--- a/clang/test/Driver/darwin-objc-selector-stubs.m
+++ b/clang/test/Driver/darwin-objc-selector-stubs.m
@@ -24,8 +24,7 @@
 // RUN: %clang -target arm64_32-apple-watchos8      -mlinker-version=1249  
-### %s 2>&1 | FileCheck %s --check-prefix=INST_STUB_ONLY
 // RUN: %clang -target arm64_32-apple-watchos8      -mlinker-version=811.2 
-### %s 2>&1 | FileCheck %s --check-prefix=INST_STUB_ONLY
 // RUN: %clang -target arm64_32-apple-watchos8      -mlinker-version=811   
-### %s 2>&1 | FileCheck %s --check-prefix=NOSTUBS
-// FIXME(#203385): LLD does not support ObjC class selector stubs yet.
-// RUN: %clang -target arm64-apple-macos12 -fuse-ld=lld -B%S/Inputs/lld 
-mlinker-version=1250 -### %s 2>&1 | FileCheck %s --check-prefix=INST_STUB_ONLY
+
 
 // Disabled elsewhere, e.g. x86_64.
 // RUN: %clang -target x86_64-apple-macos12         -mlinker-version=1250  
-### %s 2>&1 | FileCheck %s --check-prefix=NOSTUBS


        
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to