summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorTeresa Johnson <tejohnson@google.com>2015-06-10 17:49:45 +0000
committerTeresa Johnson <tejohnson@google.com>2015-06-10 17:49:45 +0000
commit88c3c6799748a14a7decb48a31d4f99a72af1527 (patch)
treed8ef43478108eaa3b12a53c56d8710d9338a7b54 /clang/lib/Frontend/CompilerInvocation.cpp
parent232fa9af3b127a95d017e9cd4d764898d19916b2 (diff)
downloadbcm5719-llvm-88c3c6799748a14a7decb48a31d4f99a72af1527.tar.gz
bcm5719-llvm-88c3c6799748a14a7decb48a31d4f99a72af1527.zip
Pass down the -flto option to the -cc1 job, and from there into the
CodeGenOptions and onto the PassManagerBuilder. This enables gating the new EliminateAvailableExternally module pass on whether we are preparing for LTO. If we are preparing for LTO (e.g. a -flto -c compile), the new pass is not included as we want to preserve available externally functions for possible link time inlining. llvm-svn: 239481
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 4f7d15fa507..3238a6408c1 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -485,6 +485,8 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK,
Opts.MergeFunctions = Args.hasArg(OPT_fmerge_functions);
+ Opts.PrepareForLTO = Args.hasArg(OPT_flto);
+
Opts.MSVolatile = Args.hasArg(OPT_fms_volatile);
Opts.VectorizeBB = Args.hasArg(OPT_vectorize_slp_aggressive);
OpenPOWER on IntegriCloud