Author: Martin Storsjö Date: 2024-08-16T11:38:22+03:00 New Revision: 8ca5ff2743f6020e29ee923114e2762b53bd32b1
URL: https://github.com/llvm/llvm-project/commit/8ca5ff2743f6020e29ee923114e2762b53bd32b1 DIFF: https://github.com/llvm/llvm-project/commit/8ca5ff2743f6020e29ee923114e2762b53bd32b1.diff LOG: Revert "[clang][driver] Fix -print-target-triple OS version for apple targets" (#104563) This reverts llvm/llvm-project#104037 / 7227b44f928a87b5d7fb05bd1539fdfb6d4958dc. This change had the unintended consequence of making e.g. `clang -target armv7-windows-gnu --print-target-triple` output `thumbv7-unknown-windows-gnu` rather than `armv7-unknown-windows-gnu`. Added: Modified: clang/lib/Driver/Driver.cpp Removed: clang/test/Driver/darwin-print-target-triple.c ################################################################################ diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 5b95019c25cab..e12416e51f8d2 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -2271,7 +2271,8 @@ bool Driver::HandleImmediateArgs(Compilation &C) { return false; } - auto initializeTargets = [&]() { + if (C.getArgs().hasArg(options::OPT_print_libgcc_file_name)) { + ToolChain::RuntimeLibType RLT = TC.GetRuntimeLibType(C.getArgs()); const llvm::Triple Triple(TC.ComputeEffectiveClangTriple(C.getArgs())); // The 'Darwin' toolchain is initialized only when its arguments are // computed. Get the default arguments for OFK_None to ensure that @@ -2281,12 +2282,6 @@ bool Driver::HandleImmediateArgs(Compilation &C) { // FIXME: For some more esoteric targets the default toolchain is not the // correct one. C.getArgsForToolChain(&TC, Triple.getArchName(), Action::OFK_None); - return Triple; - }; - - if (C.getArgs().hasArg(options::OPT_print_libgcc_file_name)) { - ToolChain::RuntimeLibType RLT = TC.GetRuntimeLibType(C.getArgs()); - const llvm::Triple Triple = initializeTargets(); RegisterEffectiveTriple TripleRAII(TC, Triple); switch (RLT) { case ToolChain::RLT_CompilerRT: @@ -2330,9 +2325,7 @@ bool Driver::HandleImmediateArgs(Compilation &C) { } if (C.getArgs().hasArg(options::OPT_print_target_triple)) { - initializeTargets(); - llvm::Triple Triple(TC.ComputeEffectiveClangTriple(C.getArgs())); - llvm::outs() << Triple.getTriple() << "\n"; + llvm::outs() << TC.getTripleString() << "\n"; return false; } diff --git a/clang/test/Driver/darwin-print-target-triple.c b/clang/test/Driver/darwin-print-target-triple.c deleted file mode 100644 index 4f5fdfe9d0db3..0000000000000 --- a/clang/test/Driver/darwin-print-target-triple.c +++ /dev/null @@ -1,42 +0,0 @@ -// Test the output of -print-target-triple on Darwin. -// See https://github.com/llvm/llvm-project/issues/61762 - -// -// All platforms -// - -// RUN: %clang -print-target-triple \ -// RUN: --target=x86_64-apple-macos -mmacos-version-min=15 \ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-MACOS %s -// CHECK-CLANGRT-MACOS: x86_64-apple-macosx15.0.0 - -// RUN: %clang -print-target-triple \ -// RUN: --target=arm64-apple-ios -mios-version-min=9 \ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-IOS %s -// CHECK-CLANGRT-IOS: arm64-apple-ios9.0.0 - -// RUN: %clang -print-target-triple \ -// RUN: --target=arm64-apple-watchos -mwatchos-version-min=3 \ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-WATCHOS %s -// CHECK-CLANGRT-WATCHOS: arm64-apple-watchos3.0.0 - -// RUN: %clang -print-target-triple \ -// RUN: --target=armv7k-apple-watchos -mwatchos-version-min=3 \ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-WATCHOS-ARMV7K %s -// CHECK-CLANGRT-WATCHOS-ARMV7K: thumbv7-apple-watchos3.0.0 - -// RUN: %clang -print-target-triple \ -// RUN: --target=arm64-apple-tvos -mtvos-version-min=1\ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-TVOS %s -// CHECK-CLANGRT-TVOS: arm64-apple-tvos1.0.0 - -// RUN: %clang -print-target-triple \ -// RUN: --target=arm64-apple-driverkit \ -// RUN: -resource-dir=%S/Inputs/resource_dir 2>&1 \ -// RUN: | FileCheck --check-prefix=CHECK-CLANGRT-DRIVERKIT %s -// CHECK-CLANGRT-DRIVERKIT: arm64-apple-driverkit19.0.0 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits