summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/ToolChains/Clang.cpp
diff options
context:
space:
mode:
authorZola Bridges <zbrid@google.com>2018-11-26 18:13:31 +0000
committerZola Bridges <zbrid@google.com>2018-11-26 18:13:31 +0000
commitc866679a9b22a88ad4849902dec68cb2af2e5d0c (patch)
tree132dea311c297246cee5fe9bee7063a0dabae89a /clang/lib/Driver/ToolChains/Clang.cpp
parente381120477eeb22eb1aecf3ba024ecf7d191cf4e (diff)
downloadbcm5719-llvm-c866679a9b22a88ad4849902dec68cb2af2e5d0c.tar.gz
bcm5719-llvm-c866679a9b22a88ad4849902dec68cb2af2e5d0c.zip
[clang][slh] Forward mSLH only to Clang CC1
Summary: -mno-speculative-load-hardening isn't a cc1 option, therefore, before this change: clang -mno-speculative-load-hardening hello.cpp would have the following error: error: unknown argument: '-mno-speculative-load-hardening' This change will only ever forward -mspeculative-load-hardening which is a CC1 option based on which flag was passed to clang. Also added a test that uses this option that fails if an error like the above is ever thrown. Thank you ericwf for help debugging and fixing this error. Reviewers: chandlerc, EricWF Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D54763 llvm-svn: 347582
Diffstat (limited to 'clang/lib/Driver/ToolChains/Clang.cpp')
-rw-r--r--clang/lib/Driver/ToolChains/Clang.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
index 9a36f7b429c..6b2083ce025 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -4452,8 +4452,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
Args.AddLastArg(CmdArgs, options::OPT_pthread);
- Args.AddLastArg(CmdArgs, options::OPT_mspeculative_load_hardening,
- options::OPT_mno_speculative_load_hardening);
+ if (Args.hasFlag(options::OPT_mspeculative_load_hardening, options::OPT_mno_speculative_load_hardening,
+ false))
+ CmdArgs.push_back(Args.MakeArgString("-mspeculative-load-hardening"));
RenderSSPOptions(TC, Args, CmdArgs, KernelOrKext);
OpenPOWER on IntegriCloud