From fea7a1940941fce10a7e30508fced96542d23c46 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Tue, 15 Aug 2017 23:57:34 +0000 Subject: [PATCH] Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux.""" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@310977 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Driver/ToolChains/CommonArgs.cpp | 16 ++-------------- test/Driver/freebsd.c | 2 +- test/Driver/gold-lto.c | 8 ++++---- test/Driver/lto-plugin-darwin.c | 6 ------ test/Driver/lto-plugin-linux.c | 6 ------ test/Driver/lto-plugin-windows.c | 6 ------ test/Driver/lto.c | 6 +++--- test/Driver/thinlto.c | 6 +++--- 8 files changed, 13 insertions(+), 43 deletions(-) delete mode 100644 test/Driver/lto-plugin-darwin.c delete mode 100644 test/Driver/lto-plugin-linux.c delete mode 100644 test/Driver/lto-plugin-windows.c diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp index b9b5b2cbe6..1273b7aabc 100644 --- a/lib/Driver/ToolChains/CommonArgs.cpp +++ b/lib/Driver/ToolChains/CommonArgs.cpp @@ -376,20 +376,8 @@ void tools::AddGoldPlugin(const ToolChain &ToolChain, const ArgList &Args, // as gold requires -plugin to come before any -plugin-opt that -Wl might // forward. CmdArgs.push_back("-plugin"); - -#if defined(LLVM_ON_WIN32) - const char *Suffix = ".dll"; -#elif defined(__APPLE__) - const char *Suffix = ".dylib"; -#else - const char *Suffix = ".so"; -#endif - - SmallString<1024> Plugin; - llvm::sys::path::native(Twine(ToolChain.getDriver().Dir) + - "/../lib" CLANG_LIBDIR_SUFFIX "/LLVMgold" + - Suffix, - Plugin); + std::string Plugin = + ToolChain.getDriver().Dir + "/../lib" CLANG_LIBDIR_SUFFIX "/LLVMgold.so"; CmdArgs.push_back(Args.MakeArgString(Plugin)); // Try to pass driver level flags relevant to LTO code generation down to diff --git a/test/Driver/freebsd.c b/test/Driver/freebsd.c index 215131a9bf..f008b76b93 100644 --- a/test/Driver/freebsd.c +++ b/test/Driver/freebsd.c @@ -127,7 +127,7 @@ // RUN: %clang -target x86_64-pc-freebsd8 %s -### -flto 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-LTO %s -// CHECK-LTO: ld{{.*}}" "-plugin{{.*}}LLVMgold.{{dll|dylib|so}} +// CHECK-LTO: ld{{.*}}" "-plugin{{.*}}LLVMgold.so // RUN: %clang -target sparc-unknown-freebsd8 %s -### -fpic -no-integrated-as 2>&1 \ // RUN: | FileCheck --check-prefix=CHECK-SPARC-PIE %s diff --git a/test/Driver/gold-lto.c b/test/Driver/gold-lto.c index b8ec49fd27..b8eca5112b 100644 --- a/test/Driver/gold-lto.c +++ b/test/Driver/gold-lto.c @@ -3,14 +3,14 @@ // RUN: %clang -target x86_64-unknown-linux -### %t.o -flto 2>&1 \ // RUN: -Wl,-plugin-opt=foo -O3 \ // RUN: | FileCheck %s --check-prefix=CHECK-X86-64-BASIC -// CHECK-X86-64-BASIC: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-X86-64-BASIC: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-X86-64-BASIC: "-plugin-opt=O3" // CHECK-X86-64-BASIC: "-plugin-opt=foo" // // RUN: %clang -target x86_64-unknown-linux -### %t.o -flto 2>&1 \ // RUN: -march=corei7 -Wl,-plugin-opt=foo -Ofast \ // RUN: | FileCheck %s --check-prefix=CHECK-X86-64-COREI7 -// CHECK-X86-64-COREI7: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-X86-64-COREI7: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-X86-64-COREI7: "-plugin-opt=mcpu=corei7" // CHECK-X86-64-COREI7: "-plugin-opt=O3" // CHECK-X86-64-COREI7: "-plugin-opt=foo" @@ -18,11 +18,11 @@ // RUN: %clang -target arm-unknown-linux -### %t.o -flto 2>&1 \ // RUN: -march=armv7a -Wl,-plugin-opt=foo -O0 \ // RUN: | FileCheck %s --check-prefix=CHECK-ARM-V7A -// CHECK-ARM-V7A: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-ARM-V7A: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-ARM-V7A: "-plugin-opt=mcpu=generic" // CHECK-ARM-V7A: "-plugin-opt=O0" // CHECK-ARM-V7A: "-plugin-opt=foo" // // RUN: %clang -target i686-linux-android -### %t.o -flto 2>&1 \ // RUN: | FileCheck %s --check-prefix=CHECK-X86-ANDROID -// CHECK-X86-ANDROID: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-X86-ANDROID: "-plugin" "{{.*}}/LLVMgold.so" diff --git a/test/Driver/lto-plugin-darwin.c b/test/Driver/lto-plugin-darwin.c deleted file mode 100644 index db21f999ba..0000000000 --- a/test/Driver/lto-plugin-darwin.c +++ /dev/null @@ -1,6 +0,0 @@ -// Check that Darwin uses LLVMgold.dylib. -// REQUIRES: system-darwin -// RUN: %clang -### %s -flto 2>&1 \ -// RUN: | FileCheck -check-prefix=CHECK-LTO-PLUGIN %s -// -// CHECK-LTO-PLUGIN: "-plugin" "{{.*}}/LLVMgold.dylib" diff --git a/test/Driver/lto-plugin-linux.c b/test/Driver/lto-plugin-linux.c deleted file mode 100644 index e30dce6b05..0000000000 --- a/test/Driver/lto-plugin-linux.c +++ /dev/null @@ -1,6 +0,0 @@ -// Check that non-Windows, non-Darwin OSs use LLVMgold.so. -// REQUIRES: !system-darwin && !system-windows -// RUN: %clang -### %s -flto 2>&1 \ -// RUN: | FileCheck -check-prefix=CHECK-LTO-PLUGIN %s -// -// CHECK-LTO-PLUGIN: "-plugin" "{{.*}}/LLVMgold.so" diff --git a/test/Driver/lto-plugin-windows.c b/test/Driver/lto-plugin-windows.c deleted file mode 100644 index 2093e6a6ce..0000000000 --- a/test/Driver/lto-plugin-windows.c +++ /dev/null @@ -1,6 +0,0 @@ -// Check that Windows uses LLVMgold.dll. -// REQUIRES: system-windows -// RUN: %clang -### %s -flto 2>&1 \ -// RUN: | FileCheck -check-prefix=CHECK-LTO-PLUGIN %s -// -// CHECK-LTO-PLUGIN: "-plugin" "{{.*}}/LLVMgold.dll" diff --git a/test/Driver/lto.c b/test/Driver/lto.c index 20afd14eb8..d2f68f571a 100644 --- a/test/Driver/lto.c +++ b/test/Driver/lto.c @@ -36,19 +36,19 @@ // RUN: %clang -target x86_64-unknown-linux -### %s -flto 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-LTO-ACTION < %t %s // -// CHECK-LINK-LTO-ACTION: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-LTO-ACTION: "-plugin" "{{.*}}/LLVMgold.so" // -flto=full should cause link using gold plugin // RUN: %clang -target x86_64-unknown-linux -### %s -flto=full 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-FULL-ACTION < %t %s // -// CHECK-LINK-FULL-ACTION: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-FULL-ACTION: "-plugin" "{{.*}}/LLVMgold.so" // Check that subsequent -fno-lto takes precedence // RUN: %clang -target x86_64-unknown-linux -### %s -flto=full -fno-lto 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-NOLTO-ACTION < %t %s // -// CHECK-LINK-NOLTO-ACTION-NOT: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-NOLTO-ACTION-NOT: "-plugin" "{{.*}}/LLVMgold.so" // -flto passes along an explicit debugger tuning argument. // RUN: %clang -target x86_64-unknown-linux -### %s -flto -glldb 2> %t diff --git a/test/Driver/thinlto.c b/test/Driver/thinlto.c index d529f9bc32..0369b78be0 100644 --- a/test/Driver/thinlto.c +++ b/test/Driver/thinlto.c @@ -19,19 +19,19 @@ // RUN: %clang -target x86_64-unknown-linux -### %s -flto=full -fno-lto -flto=thin 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-THIN-ACTION < %t %s // -// CHECK-LINK-THIN-ACTION: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-THIN-ACTION: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-LINK-THIN-ACTION: "-plugin-opt=thinlto" // Check that subsequent -flto=full takes precedence // RUN: %clang -target x86_64-unknown-linux -### %s -flto=thin -flto=full 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-FULL-ACTION < %t %s // -// CHECK-LINK-FULL-ACTION: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-FULL-ACTION: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-LINK-FULL-ACTION-NOT: "-plugin-opt=thinlto" // Check that subsequent -fno-lto takes precedence // RUN: %clang -target x86_64-unknown-linux -### %s -flto=thin -fno-lto 2> %t // RUN: FileCheck -check-prefix=CHECK-LINK-NOLTO-ACTION < %t %s // -// CHECK-LINK-NOLTO-ACTION-NOT: "-plugin" "{{.*}}/LLVMgold.{{dll|dylib|so}}" +// CHECK-LINK-NOLTO-ACTION-NOT: "-plugin" "{{.*}}/LLVMgold.so" // CHECK-LINK-NOLTO-ACTION-NOT: "-plugin-opt=thinlto" -- 2.40.0