diff options
author | Dan Gohman <gohman@apple.com> | 2007-05-11 20:53:41 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2007-05-11 20:53:41 +0000 |
commit | c767844fc9238d504f2fad3a335163ce040fefc4 (patch) | |
tree | 7bd3d1a530e0db3da2b762c4aabefb133494e9cc /lib/Transforms/Utils/LCSSA.cpp | |
parent | 3aea1bdca59629bd3031f62b52e2ad353b992b2b (diff) |
This patch extends the LoopUnroll pass to be able to unroll loops
with unknown trip counts. This is left off by default, and a
command-line option enables it. It also begins to separate loop
unrolling into a utility routine; eventually it might be made usable
from other passes.
It currently works by inserting conditional branches between each
unrolled iteration, unless it proves that the trip count is a
multiple of a constant integer > 1, which it currently only does in
the rare case that the trip count expression is a Mul operator with
a ConstantInt operand. Eventually this information might be provided
by other sources, for example by a pass that peels/splits the loop
for this purpose.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36990 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/LCSSA.cpp')
0 files changed, 0 insertions, 0 deletions