aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2022-02-05 20:07:43 +0000
committerDimitry Andric <dim@FreeBSD.org>2022-06-04 11:59:26 +0000
commit67eec5325a1ab99d493fd7e0381d20aab19b286e (patch)
treeb14fe1fa6cc55067c1deecc4adc75920d3630d12 /contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h
parent390adc38fc112be360bd15499e5241bf4e675b6f (diff)
downloadsrc-67eec5325a1ab99d493fd7e0381d20aab19b286e.tar.gz
src-67eec5325a1ab99d493fd7e0381d20aab19b286e.zip
Merge llvm-project main llvmorg-14-init-18294-gdb01b123d012
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-14-init-18294-gdb01b123d012, the last commit before the upstream release/14.x branch was created. PR: 261742 MFC after: 2 weeks (cherry picked from commit 1fd87a682ad7442327078e1eeb63edc4258f9815)
Diffstat (limited to 'contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h')
-rw-r--r--contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h b/contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h
index 1e6dac44cf2b..b16aa7017719 100644
--- a/contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h
+++ b/contrib/llvm-project/llvm/include/llvm/Analysis/ScalarEvolution.h
@@ -1111,9 +1111,11 @@ public:
/// Simplify LHS and RHS in a comparison with predicate Pred. Return true
/// iff any changes were made. If the operands are provably equal or
/// unequal, LHS and RHS are set to the same value and Pred is set to either
- /// ICMP_EQ or ICMP_NE.
+ /// ICMP_EQ or ICMP_NE. ControllingFiniteLoop is set if this comparison
+ /// controls the exit of a loop known to have a finite number of iterations.
bool SimplifyICmpOperands(ICmpInst::Predicate &Pred, const SCEV *&LHS,
- const SCEV *&RHS, unsigned Depth = 0);
+ const SCEV *&RHS, unsigned Depth = 0,
+ bool ControllingFiniteLoop = false);
/// Return the "disposition" of the given SCEV with respect to the given
/// loop.