[llvm] r175014 - Actually delete this code, since it's really not clear what it's
Jim Grosbach
grosbach at apple.com
Tue Feb 12 15:59:23 PST 2013
I'm torn between thinking this is hilarious, scary, or awesome. I'm going to go with "all three" and back away slowly before the buildbots see it. ;)
-Jim
On Feb 12, 2013, at 2:26 PM, Dan Gohman <dan433584 at gmail.com> wrote:
> Author: djg
> Date: Tue Feb 12 16:26:41 2013
> New Revision: 175014
>
> URL: http://llvm.org/viewvc/llvm-project?rev=175014&view=rev
> Log:
> Actually delete this code, since it's really not clear what it's
> trying to do.
>
> Modified:
> llvm/trunk/lib/Transforms/Scalar/GVN.cpp
>
> Modified: llvm/trunk/lib/Transforms/Scalar/GVN.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/GVN.cpp?rev=175014&r1=175013&r2=175014&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/Scalar/GVN.cpp (original)
> +++ llvm/trunk/lib/Transforms/Scalar/GVN.cpp Tue Feb 12 16:26:41 2013
> @@ -1526,10 +1526,8 @@ bool GVN::processNonLocalLoad(LoadInst *
> BasicBlock *LoadBB = LI->getParent();
> BasicBlock *TmpBB = LoadBB;
>
> - bool isSinglePred = false;
> bool allSingleSucc = true;
> while (TmpBB->getSinglePredecessor()) {
> - isSinglePred = true;
> TmpBB = TmpBB->getSinglePredecessor();
> if (TmpBB == LoadBB) // Infinite (unreachable) loop.
> return false;
> @@ -1548,28 +1546,6 @@ bool GVN::processNonLocalLoad(LoadInst *
> assert(TmpBB);
> LoadBB = TmpBB;
>
> - // FIXME: It is extremely unclear what this loop is doing, other than
> - // artificially restricting loadpre.
> - if (isSinglePred) {
> - bool isHot = false;
> - for (unsigned i = 0, e = ValuesPerBlock.size(); i != e; ++i) {
> - const AvailableValueInBlock &AV = ValuesPerBlock[i];
> - if (AV.isSimpleValue())
> - // "Hot" Instruction is in some loop (because it dominates its dep.
> - // instruction).
> - if (Instruction *I = dyn_cast<Instruction>(AV.getSimpleValue()))
> - if (DT->dominates(LI, I)) {
> - isHot = true;
> - break;
> - }
> - }
> -
> - // We are interested only in "hot" instructions. We don't want to do any
> - // mis-optimizations here.
> - if (!isHot)
> - return false;
> - }
> -
> // Check to see how many predecessors have the loaded value fully
> // available.
> DenseMap<BasicBlock*, Value*> PredLoads;
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list