History log of /llvm-project/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp (Results 351 – 369 of 369)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 62705159 09-Sep-2010 Owen Anderson <resistor@mac.com>

Revert r113439, which relaxed the requirement that loops containing calls cannot be unrolled. After some discussion,
there seems to be a better way to achieve the same effect.

llvm-svn: 113528


# 11ab204f 09-Sep-2010 Owen Anderson <resistor@mac.com>

r113526 introduced an unintended change to the loop unrolling threshold. Revert it.

llvm-svn: 113527


# b61b1647 09-Sep-2010 Owen Anderson <resistor@mac.com>

Fix typo in code to cap the loop code size reduction calculation.

llvm-svn: 113526


# 62ea1b71 09-Sep-2010 Owen Anderson <resistor@mac.com>

Use code-size reduction metrics to estimate the amount of savings we'll get when we unroll a loop.
Next step is to recalculate the threshold values given this new heuristic.

llvm-svn: 113525


# 8084dbaf 08-Sep-2010 Owen Anderson <resistor@mac.com>

Relax the "don't unroll loops containing calls" rule. Instead, when a loop contains a call, lower the
unrolling threshold to the optimize-for-size threshold. Basically, for loops containing calls,

Relax the "don't unroll loops containing calls" rule. Instead, when a loop contains a call, lower the
unrolling threshold to the optimize-for-size threshold. Basically, for loops containing calls, unrolling
can still be profitable as long as the loop is REALLY small.

llvm-svn: 113439

show more ...


# a4d9c78a 07-Sep-2010 Owen Anderson <resistor@mac.com>

Add a separate unrolling threshold when the current function is being optimized for size.
The threshold value of 50 is arbitrary, and I chose it simply by analogy to the inlining thresholds, where
th

Add a separate unrolling threshold when the current function is being optimized for size.
The threshold value of 50 is arbitrary, and I chose it simply by analogy to the inlining thresholds, where
the baseline unrolling threshold is slightly smaller than the baseline inlining threshold. This could
undoubtedly use some tuning.

llvm-svn: 113306

show more ...


Revision tags: llvmorg-2.8.0-rc1, llvmorg-2.8.0-rc0
# d6f46b8a 29-Aug-2010 Chris Lattner <sabre@nondot.org>

now that loop passes don't use DomFrontier, there is no reason
for the unroller to pretend it supports updating it. It still
has a horrible hack for DomTree.

llvm-svn: 112444


# a7aed186 06-Aug-2010 Owen Anderson <resistor@mac.com>

Reapply r110396, with fixes to appease the Linux buildbot gods.

llvm-svn: 110460


# bda59bd2 06-Aug-2010 Owen Anderson <resistor@mac.com>

Revert r110396 to fix buildbots.

llvm-svn: 110410


# 755aceb5 05-Aug-2010 Owen Anderson <resistor@mac.com>

Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.

llvm-svn: 110396


# 9f2bca02 04-Aug-2010 Owen Anderson <resistor@mac.com>

Experiments show that we can safely increase our unrolling threshold without unduly impacting code size, particularly
since unrolling is not enabled at -Os.

llvm-svn: 110233


# 0141c13b 26-Jul-2010 Dan Gohman <gohman@apple.com>

Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus
dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets sc

Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus
dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets scheduled at the right
time.

Declare that loop unrolling preserves ScalarEvolution, and shuffle some
getAnalysisUsages.

This eliminates one LoopSimplify and one LCCSA run in the standard
compile opts sequence.

llvm-svn: 109413

show more ...


# a57b97e7 21-Jul-2010 Owen Anderson <resistor@mac.com>

Fix batch of converting RegisterPass<> to INTIALIZE_PASS().

llvm-svn: 109045


Revision tags: llvmorg-2.7.0
# 2734ebd3 10-Mar-2010 Dan Gohman <gohman@apple.com>

Add a DominatorTree argument to isLCSSA so that it doesn't have to
compute a set of reachable blocks for itself each time it is called, which
is fairly frequently.

llvm-svn: 98179


# 5f9ead27 05-Feb-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Don't unroll loops containing function calls.

llvm-svn: 95454


# e0b97895 05-Jan-2010 David Greene <greened@obbligato.org>

Change errs() to dbgs().

llvm-svn: 92623


# 969e83a4 31-Oct-2009 Dan Gohman <gohman@apple.com>

Replace LoopUnrollPass.cpp's custom code-size estimation code using
the new common CodeMetrics code.

llvm-svn: 85663


# af94015c 31-Oct-2009 Dan Gohman <gohman@apple.com>

Remove an unnecessary #include.

llvm-svn: 85661


# f70e76c4 31-Oct-2009 Dan Gohman <gohman@apple.com>

Rename UnrollLoop.cpp to LoopUnroll.cpp, and LoopUnroll.cpp to
LoopUnrollPass.cpp, for consistency with other passes which are
similarly split.

llvm-svn: 85659


1...<<1112131415