diff options
author | Dan Gohman <gohman@apple.com> | 2009-07-10 16:42:52 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-07-10 16:42:52 +0000 |
commit | 1b342583f6fc42f548912632f6aa24fc6e11986a (patch) | |
tree | 9eb60b46c5918990509c32d8147f954ca535bd8e /include/llvm/Analysis/ScalarEvolutionExpressions.h | |
parent | 16a412edb6d279bb5fbffba3ff1a6c914e478aaf (diff) | |
download | external_llvm-1b342583f6fc42f548912632f6aa24fc6e11986a.zip external_llvm-1b342583f6fc42f548912632f6aa24fc6e11986a.tar.gz external_llvm-1b342583f6fc42f548912632f6aa24fc6e11986a.tar.bz2 |
Generalize ScalarEvolution's cast-folding code to support more kinds
of loops. Add several new functions to for working with ScalarEvolution's
add-hoc value-range analysis functionality.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75252 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/ScalarEvolutionExpressions.h')
-rw-r--r-- | include/llvm/Analysis/ScalarEvolutionExpressions.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/Analysis/ScalarEvolutionExpressions.h b/include/llvm/Analysis/ScalarEvolutionExpressions.h index d564040..e87d063 100644 --- a/include/llvm/Analysis/ScalarEvolutionExpressions.h +++ b/include/llvm/Analysis/ScalarEvolutionExpressions.h @@ -453,6 +453,12 @@ namespace llvm { const SCEV *Conc, ScalarEvolution &SE) const; + /// getPostIncExpr - Return an expression representing the value of + /// this expression one iteration of the loop ahead. + const SCEV *getPostIncExpr(ScalarEvolution &SE) const { + return SE.getAddExpr(this, getStepRecurrence(SE)); + } + virtual void print(raw_ostream &OS) const; /// Methods for support type inquiry through isa, cast, and dyn_cast: |