diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-18 22:09:26 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-18 22:09:26 +0000 |
commit | f75c8b3c8db9cac8f25b379d8fd24ae3ff31919a (patch) | |
tree | 98c3786d3d854fd78145184c4d745af70bdaddb6 /clang/lib/Driver/Tools.cpp | |
parent | b2206e71e1e32a29b6d3509d55b26f066bf26390 (diff) | |
download | bcm5719-llvm-f75c8b3c8db9cac8f25b379d8fd24ae3ff31919a.tar.gz bcm5719-llvm-f75c8b3c8db9cac8f25b379d8fd24ae3ff31919a.zip |
Include ubsan runtime even when building a shared library. We don't require the executable to be linked with UBSan.
llvm-svn: 172856
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r-- | clang/lib/Driver/Tools.cpp | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 3fbcd9498d1..3132e75000d 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -1587,17 +1587,15 @@ static void addMsanRTLinux(const ToolChain &TC, const ArgList &Args, /// (Linux). static void addUbsanRTLinux(const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) { - if (!Args.hasArg(options::OPT_shared)) { - // LibUbsan is "libclang_rt.ubsan-<ArchName>.a" in the Linux library - // resource directory. - SmallString<128> LibUbsan(TC.getDriver().ResourceDir); - llvm::sys::path::append(LibUbsan, "lib", "linux", - (Twine("libclang_rt.ubsan-") + - TC.getArchName() + ".a")); - CmdArgs.push_back(Args.MakeArgString(LibUbsan)); - CmdArgs.push_back("-lpthread"); - CmdArgs.push_back("-export-dynamic"); - } + // LibUbsan is "libclang_rt.ubsan-<ArchName>.a" in the Linux library + // resource directory. + SmallString<128> LibUbsan(TC.getDriver().ResourceDir); + llvm::sys::path::append(LibUbsan, "lib", "linux", + (Twine("libclang_rt.ubsan-") + + TC.getArchName() + ".a")); + CmdArgs.push_back(Args.MakeArgString(LibUbsan)); + CmdArgs.push_back("-lpthread"); + CmdArgs.push_back("-export-dynamic"); } static bool shouldUseFramePointer(const ArgList &Args, |