aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2012-10-25 02:14:12 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2012-10-25 02:14:12 +0000
commit4d3110af0642e048b96d5e85bf58555cfa662b9f (patch)
tree5068b08fd94953b572b875426ccf5a221777adcd /clang/lib/Driver/Tools.cpp
parent2f0d7d564c9aaa6fa938114737a14a83249346b2 (diff)
downloadllvm-4d3110af0642e048b96d5e85bf58555cfa662b9f.zip
llvm-4d3110af0642e048b96d5e85bf58555cfa662b9f.tar.gz
llvm-4d3110af0642e048b96d5e85bf58555cfa662b9f.tar.bz2
-fcatch-undefined-behavior checking for appropriate vptr value: Clang CodeGen side.
llvm-svn: 166661
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index c7b811f..51228d7 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -5914,6 +5914,9 @@ void linuxtools::Link::ConstructJob(Compilation &C, const JobAction &JA,
AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs);
+ // Call this before we add the C++ ABI library.
+ addUbsanRTLinux(getToolChain(), Args, CmdArgs);
+
if (D.CCCIsCXX &&
!Args.hasArg(options::OPT_nostdlib) &&
!Args.hasArg(options::OPT_nodefaultlibs)) {
@@ -5966,7 +5969,6 @@ void linuxtools::Link::ConstructJob(Compilation &C, const JobAction &JA,
}
addProfileRT(getToolChain(), Args, CmdArgs, getToolChain().getTriple());
- addUbsanRTLinux(getToolChain(), Args, CmdArgs);
C.addCommand(new Command(JA, *this, ToolChain.Linker.c_str(), CmdArgs));
}