summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-02-10 18:49:11 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-02-10 18:49:11 +0000
commit3241d400c86cf49e243643fdce3a408838754717 (patch)
treeb94a16b52e5a74d7576a8374fc1769387ca15251 /clang/lib/Driver/Tools.cpp
parent535fdaf0201487ce2e7b9a1c12643bdf55173b36 (diff)
downloadbcm5719-llvm-3241d400c86cf49e243643fdce3a408838754717.tar.gz
bcm5719-llvm-3241d400c86cf49e243643fdce3a408838754717.zip
Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixes
calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. llvm-svn: 95787
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 2aa71163be6..7bc7875b113 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -1004,6 +1004,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
if (needsExceptions(Args, InputType, getToolChain().getTriple()))
CmdArgs.push_back("-fexceptions");
+ if (getToolChain().UseSjLjExceptions())
+ CmdArgs.push_back("-fsjlj-exceptions");
+
// -frtti is default.
if (!Args.hasFlag(options::OPT_frtti, options::OPT_fno_rtti))
CmdArgs.push_back("-fno-rtti");
OpenPOWER on IntegriCloud