Unify the name of compiler-rt builtins library on Linux.
authorAlexey Samsonov <vonosmas@gmail.com>
Thu, 22 May 2014 21:13:30 +0000 (21:13 +0000)
committerAlexey Samsonov <vonosmas@gmail.com>
Thu, 22 May 2014 21:13:30 +0000 (21:13 +0000)
Call it "libclang_rt.builtins-<arch>.a" to be consistent
with sanitizers/profile libraries naming. Modify Makefile
and CMake build systems and Clang driver accordingly.

Fixes PR19822.

llvm-svn: 209474

clang/lib/Driver/Tools.cpp
clang/runtime/compiler-rt/Makefile
clang/test/Driver/linux-ld.c

index e51cb1b..3fe552d 100644 (file)
@@ -1891,14 +1891,15 @@ static SmallString<128> getCompilerRTLibDir(const ToolChain &TC) {
   return Res;
 }
 
-// This adds the static libclang_rt.arch.a directly to the command line
+// This adds the static libclang_rt.builtins-arch.a directly to the command line
 // FIXME: Make sure we can also emit shared objects if they're requested
 // and available, check for possible errors, etc.
 static void addClangRTLinux(
     const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) {
   SmallString<128> LibClangRT = getCompilerRTLibDir(TC);
-  llvm::sys::path::append(LibClangRT,
-      Twine("libclang_rt.") + getArchNameForCompilerRTLib(TC) + ".a");
+  llvm::sys::path::append(LibClangRT, Twine("libclang_rt.builtins-") +
+                                          getArchNameForCompilerRTLib(TC) +
+                                          ".a");
 
   CmdArgs.push_back(Args.MakeArgString(LibClangRT));
   CmdArgs.push_back("-lgcc_s");
index 9833eb9..ccd83a3 100644 (file)
@@ -126,7 +126,7 @@ TryCompile = \
 
 # We try to build 32-bit runtimes both on 32-bit hosts and 64-bit hosts.
 Runtime32BitConfigs = \
-       full-i386.a profile-i386.a san-i386.a asan-i386.a asan_cxx-i386.a \
+       builtins-i386.a profile-i386.a san-i386.a asan-i386.a asan_cxx-i386.a \
        ubsan-i386.a ubsan_cxx-i386.a
 
 # We currently only try to generate runtime libraries on x86.
@@ -136,7 +136,7 @@ endif
 
 ifeq ($(ARCH),x86_64)
 RuntimeLibrary.linux.Configs += \
-       full-x86_64.a profile-x86_64.a san-x86_64.a asan-x86_64.a \
+       builtins-x86_64.a profile-x86_64.a san-x86_64.a asan-x86_64.a \
        asan_cxx-x86_64.a tsan-x86_64.a msan-x86_64.a ubsan-x86_64.a \
        ubsan_cxx-x86_64.a dfsan-x86_64.a lsan-x86_64.a
 # We need to build 32-bit ASan/UBsan libraries on 64-bit platform, and add them
index 4036635..5509e53 100644 (file)
@@ -49,9 +49,9 @@
 // CHECK-LD-RT: "-L[[SYSROOT]]/usr/lib/gcc/x86_64-unknown-linux/4.6.0/../../.."
 // CHECK-LD-RT: "-L[[SYSROOT]]/lib"
 // CHECK-LD-RT: "-L[[SYSROOT]]/usr/lib"
-// CHECK-LD-RT: libclang_rt.x86_64.a" "-lgcc_s"
+// CHECK-LD-RT: libclang_rt.builtins-x86_64.a" "-lgcc_s"
 // CHECK-LD-RT: "-lc"
-// CHECK-LD-RT: libclang_rt.x86_64.a" "-lgcc_s"
+// CHECK-LD-RT: libclang_rt.builtins-x86_64.a" "-lgcc_s"
 //
 // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
 // RUN:     --target=x86_64-unknown-linux \