Author: Fangrui Song Date: 2021-04-07T21:01:10-07:00 New Revision: 8ac5e440615dd3dc9fd2eb88c0bad32fdc5f678c
URL: https://github.com/llvm/llvm-project/commit/8ac5e440615dd3dc9fd2eb88c0bad32fdc5f678c DIFF: https://github.com/llvm/llvm-project/commit/8ac5e440615dd3dc9fd2eb88c0bad32fdc5f678c.diff LOG: [Driver] Drop $DEFAULT_TRIPLE-$name as a fallback program name D13340 introduced this behavior which is not needed even for mips. This was raised on https://lists.llvm.org/pipermail/cfe-dev/2020-May/065437.html but no action was taken. This was raised again in https://lists.llvm.org/pipermail/cfe-dev/2021-April/067974.html "The LLVM host/target TRIPLE padding drama on Debian" as it caused confusion. This patch drops the behavior. Differential Revision: https://reviews.llvm.org/D99996 Added: Modified: clang/lib/Driver/Driver.cpp clang/test/Driver/program-path-priority.c Removed: ################################################################################ diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index 171d3d5b5b88..39a630a7b4e8 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -5070,11 +5070,6 @@ void Driver::generatePrefixedToolNames( // FIXME: Needs a better variable than TargetTriple Names.emplace_back((TargetTriple + "-" + Tool).str()); Names.emplace_back(Tool); - - // Allow the discovery of tools prefixed with LLVM's default target triple. - std::string DefaultTargetTriple = llvm::sys::getDefaultTargetTriple(); - if (DefaultTargetTriple != TargetTriple) - Names.emplace_back((DefaultTargetTriple + "-" + Tool).str()); } static bool ScanDirForExecutable(SmallString<128> &Dir, StringRef Name) { diff --git a/clang/test/Driver/program-path-priority.c b/clang/test/Driver/program-path-priority.c index cba5f9f4d743..ee931dd7a9a3 100644 --- a/clang/test/Driver/program-path-priority.c +++ b/clang/test/Driver/program-path-priority.c @@ -3,8 +3,7 @@ /// Check the priority used when searching for tools /// Names and locations are usually in this order: -/// <triple>-tool, tool, <default triple>-tool -/// program path, PATH +/// <triple>-tool, tool, program path, PATH /// (from highest to lowest priority) /// A higher priority name found in a lower priority /// location will win over a lower priority name in a @@ -102,13 +101,11 @@ // DEFAULT_TRIPLE_NO_NOTREAL: env/gcc" // DEFAULT_TRIPLE_NO_NOTREAL-NOT: -gcc" -/// default triple only chosen when no others are present +/// Pick "gcc" as a fallback. Don't pick $DEFAULT_TRIPLE-gcc. // RUN: rm %t/env/gcc // RUN: env "PATH=%t/env/" %t/clang -### -target notreal-none-elf %s 2>&1 | \ // RUN: FileCheck --check-prefix=DEFAULT_TRIPLE_NO_OTHERS %s -// DEFAULT_TRIPLE_NO_OTHERS: -gcc" -// DEFAULT_TRIPLE_NO_OTHERS-NOT: notreal-none-elf-gcc" -// DEFAULT_TRIPLE_NO_OTHERS-NOT: /gcc" +// DEFAULT_TRIPLE_NO_OTHERS: "gcc" /// -B paths are searched separately so default triple will win /// if put in one of those even if other paths have higher priority names _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits