Revert "Link in profile library on Linux using --whole-archive"

This reverts commit r205012.

llvm-svn: 205022
This commit is contained in:
Duncan P. N. Exon Smith 2014-03-28 17:53:17 +00:00
parent f0ae3c2de2
commit 2d8f93e869
2 changed files with 10 additions and 11 deletions

View File

@ -1817,16 +1817,18 @@ static void addProfileRT(
Args.hasArg(options::OPT_coverage)))
return;
// Pull in runtime for -fprofile-inst-generate. This is required since there
// are no calls to the runtime in the code.
if (Args.hasArg(options::OPT_fprofile_instr_generate)) {
CmdArgs.push_back("-u");
CmdArgs.push_back("___llvm_profile_runtime");
}
SmallString<128> LibProfile = getCompilerRTLibDir(TC);
llvm::sys::path::append(LibProfile,
Twine("libclang_rt.profile-") + getArchNameForCompilerRTLib(TC) + ".a");
SmallVector<const char *, 3> LibProfileArgs;
LibProfileArgs.push_back("-whole-archive");
LibProfileArgs.push_back(Args.MakeArgString(LibProfile));
LibProfileArgs.push_back("-no-whole-archive");
CmdArgs.insert(CmdArgs.end(), LibProfileArgs.begin(), LibProfileArgs.end());
CmdArgs.push_back(Args.MakeArgString(LibProfile));
}
static void addSanitizerRTLinkFlags(

View File

@ -16,11 +16,8 @@
// RUN: | FileCheck --check-prefix=CHECK-LINUX-X86-64 %s
//
// CHECK-LINUX-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
// CHECK-LINUX-X86-64: "-whole-archive"
// CHECK-LINUX-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a"
// CHECK-LINUX-X86-64: "-no-whole-archive"
// CHECK-LINUX-X86-64: "-lc"
// CHECK-LINUX-X86-64: "{{.*}}/Inputs/resource_dir{{/|\\\\}}lib{{/|\\\\}}linux{{/|\\\\}}libclang_rt.profile-x86_64.a" {{.*}} "-lc"
//
// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
// RUN: -target x86_64-unknown-freebsd --coverage \
// RUN: -resource-dir=%S/Inputs/resource_dir \