[llvm-commits] [llvm] r85016 - /llvm/trunk/lib/Transforms/Scalar/LoopRotation.cpp
Chris Lattner
clattner at apple.com
Sat Oct 24 18:20:52 PDT 2009
On Oct 24, 2009, at 4:19 PM, Dan Gohman wrote:
> Author: djg
> Date: Sat Oct 24 18:19:52 2009
> New Revision: 85016
>
> URL: http://llvm.org/viewvc/llvm-project?rev=85016&view=rev
> Log:
> Rewrite LoopRotation's SSA updating code using SSAUpdater.
Awesome, I didn't remember loop rotate had its own ssa update code.
If, in your travels, you run into any cases where SSAUpdate is a
significant compile time issue, please give me a testcase. I have
many less-than-crazy ideas for speeding it up.
> +
> + // Now fix up users of the instructions in OrigHeader, insertting
> PHI nodes
typo insertting.
> + // as necessary.
> + SSAUpdater SSA;
> + for (I = OrigHeader->begin(); I != E; ++I) {
> + Value *OrigHeaderVal = I;
Most instructions only have uses within their block and these don't
need to be rewritten. It would improve efficiency to do something
like this if it is safe:
if (I->hasOneUse() && I->use_back()->getParent() == I &&
!isa<PHINode>(I->use_back()))
continue;
Thanks for updating looprotate!
-Chris
More information about the llvm-commits
mailing list