diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2011-10-04 06:51:26 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2011-10-04 06:51:26 +0000 |
commit | e97728ecf8a0ee69562cc0e7880cfaa65200c624 (patch) | |
tree | efec7199224c5861d0342b7b7bc827e30ce60947 /include | |
parent | 6744a17dcfb941d9fdd869b9f06e20660e18ff88 (diff) | |
download | llvm-e97728ecf8a0ee69562cc0e7880cfaa65200c624.tar.gz llvm-e97728ecf8a0ee69562cc0e7880cfaa65200c624.tar.bz2 llvm-e97728ecf8a0ee69562cc0e7880cfaa65200c624.tar.xz |
The product of two chrec's can always be represented as a chrec.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141066 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Analysis/ScalarEvolution.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/llvm/Analysis/ScalarEvolution.h b/include/llvm/Analysis/ScalarEvolution.h index f249bcf8c5..10d933e68f 100644 --- a/include/llvm/Analysis/ScalarEvolution.h +++ b/include/llvm/Analysis/ScalarEvolution.h @@ -588,6 +588,14 @@ namespace llvm { Ops.push_back(RHS); return getMulExpr(Ops, Flags); } + const SCEV *getMulExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, + SCEV::NoWrapFlags Flags = SCEV::FlagAnyWrap) { + SmallVector<const SCEV *, 3> Ops; + Ops.push_back(Op0); + Ops.push_back(Op1); + Ops.push_back(Op2); + return getMulExpr(Ops, Flags); + } const SCEV *getUDivExpr(const SCEV *LHS, const SCEV *RHS); const SCEV *getAddRecExpr(const SCEV *Start, const SCEV *Step, const Loop *L, SCEV::NoWrapFlags Flags); |