aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorNirav Dave <niravd@google.com>2016-04-05 17:50:43 +0000
committerNirav Dave <niravd@google.com>2016-04-05 17:50:43 +0000
commitd2f44d8de01a635e197b3ad4dcafdab5f2b4408a (patch)
tree036b34df394049a6f3e996a2155d8026153027cd /clang/lib/Driver/Tools.cpp
parent376ab7cc7bf65e7c14308a4a4f6d411883097f9c (diff)
downloadllvm-d2f44d8de01a635e197b3ad4dcafdab5f2b4408a.zip
llvm-d2f44d8de01a635e197b3ad4dcafdab5f2b4408a.tar.gz
llvm-d2f44d8de01a635e197b3ad4dcafdab5f2b4408a.tar.bz2
Add -fno-jump-tables and-fjump-tables flags
Add no-jump-tables flag to disable use of jump tables when lowering switch statements Reviewers: echristo, hans Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D18407 llvm-svn: 265425
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 824ee72..6be2829 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -3891,6 +3891,10 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
A->claim();
}
+ if (!Args.hasFlag(options::OPT_fjump_tables, options::OPT_fno_jump_tables,
+ true))
+ CmdArgs.push_back("-fno-jump-tables");
+
if (Arg *A = Args.getLastArg(options::OPT_mregparm_EQ)) {
CmdArgs.push_back("-mregparm");
CmdArgs.push_back(A->getValue());