aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--flang/lib/Frontend/CompilerInvocation.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/flang/lib/Frontend/CompilerInvocation.cpp b/flang/lib/Frontend/CompilerInvocation.cpp
index 1c09ae9..0dc11ab 100644
--- a/flang/lib/Frontend/CompilerInvocation.cpp
+++ b/flang/lib/Frontend/CompilerInvocation.cpp
@@ -268,6 +268,17 @@ static void parseCodeGenArgs(Fortran::frontend::CodeGenOptions &opts,
opts.PrepareForThinLTO = true;
}
+ if (const llvm::opt::Arg *a = args.getLastArg(
+ clang::driver::options::OPT_mcode_object_version_EQ)) {
+ llvm::StringRef s = a->getValue();
+ if (s == "5")
+ opts.CodeObjectVersion = llvm::CodeObjectVersionKind::COV_5;
+ if (s == "4")
+ opts.CodeObjectVersion = llvm::CodeObjectVersionKind::COV_4;
+ if (s == "none")
+ opts.CodeObjectVersion = llvm::CodeObjectVersionKind::COV_None;
+ }
+
// -f[no-]save-optimization-record[=<format>]
if (const llvm::opt::Arg *a =
args.getLastArg(clang::driver::options::OPT_opt_record_file))