diff options
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r-- | flang/lib/Frontend/CompilerInvocation.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/flang/lib/Frontend/CompilerInvocation.cpp b/flang/lib/Frontend/CompilerInvocation.cpp index 0dc11ab..30e53ce 100644 --- a/flang/lib/Frontend/CompilerInvocation.cpp +++ b/flang/lib/Frontend/CompilerInvocation.cpp @@ -242,12 +242,10 @@ static void parseCodeGenArgs(Fortran::frontend::CodeGenOptions &opts, clang::driver::options::OPT_fno_loop_versioning, false)) opts.LoopVersioning = 1; - opts.AliasAnalysis = opts.OptimizationLevel > 0; - if (auto *arg = - args.getLastArg(clang::driver::options::OPT_falias_analysis, - clang::driver::options::OPT_fno_alias_analysis)) - opts.AliasAnalysis = - arg->getOption().matches(clang::driver::options::OPT_falias_analysis); + opts.AliasAnalysis = + args.hasFlag(clang::driver::options::OPT_falias_analysis, + clang::driver::options::OPT_fno_alias_analysis, + /*default=*/false); for (auto *a : args.filtered(clang::driver::options::OPT_fpass_plugin_EQ)) opts.LLVMPassPlugins.push_back(a->getValue()); |