aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJan Svoboda <jan_svoboda@apple.com>2021-02-16 14:27:21 +0100
committerJan Svoboda <jan_svoboda@apple.com>2021-02-16 14:39:20 +0100
commit32389346ed83e14b7a9bd3a31a96181c6a1cdb5e (patch)
treed1684aea780f92f1a40730ac2e35aaa5d1c779bc /clang/lib/Frontend/CompilerInvocation.cpp
parent13f4448ae7db1a477ec2d48776e46415a3401314 (diff)
downloadllvm-32389346ed83e14b7a9bd3a31a96181c6a1cdb5e.zip
llvm-32389346ed83e14b7a9bd3a31a96181c6a1cdb5e.tar.gz
llvm-32389346ed83e14b7a9bd3a31a96181c6a1cdb5e.tar.bz2
[clang][cli] Generate -f[no-]finite-loops arguments
This patch generates the `-f[no-]finite-loops` arguments from `CompilerInvocation` (added in D96419), fixing test failures of Clang built with `-DCLANG_ROUND_TRIP_CC1_ARGS=ON`. Reviewed By: fhahn Differential Revision: https://reviews.llvm.org/D96761
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index b2ee11a..f929647 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -1509,6 +1509,17 @@ void CompilerInvocation::GenerateCodeGenArgs(
if (!Opts.EmitVersionIdentMetadata)
GenerateArg(Args, OPT_Qn, SA);
+
+ switch (Opts.FiniteLoops) {
+ case CodeGenOptions::FiniteLoopsKind::Language:
+ break;
+ case CodeGenOptions::FiniteLoopsKind::Always:
+ GenerateArg(Args, OPT_ffinite_loops, SA);
+ break;
+ case CodeGenOptions::FiniteLoopsKind::Never:
+ GenerateArg(Args, OPT_fno_finite_loops, SA);
+ break;
+ }
}
bool CompilerInvocation::ParseCodeGenArgsImpl(CodeGenOptions &Opts,