diff options
author | Bradley Smith <bradley.smith@arm.com> | 2014-10-31 11:40:32 +0000 |
---|---|---|
committer | Bradley Smith <bradley.smith@arm.com> | 2014-10-31 11:40:32 +0000 |
commit | 9992b167aea97de3a13bf0f0b95189a4e5f4bf92 (patch) | |
tree | 90c4c43d7668cb2d3185a26320e356db69a589bd /llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp | |
parent | c8c2ea2854bb750374158ff1b9c3cd7ccd9481f1 (diff) | |
download | bcm5719-llvm-9992b167aea97de3a13bf0f0b95189a4e5f4bf92.tar.gz bcm5719-llvm-9992b167aea97de3a13bf0f0b95189a4e5f4bf92.zip |
[SCEV] Improve Scalar Evolution's use of no {un,}signed wrap flags
In a case where we have a no {un,}signed wrap flag on the increment, if
RHS - Start is constant then we can avoid inserting a max operation bewteen
the two, since we can statically determine which is greater.
This allows us to unroll loops such as:
void testcase3(int v) {
for (int i=v; i<=v+1; ++i)
f(i);
}
llvm-svn: 220960
Diffstat (limited to 'llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp')
0 files changed, 0 insertions, 0 deletions