diff options
author | Eric Christopher <echristo@gmail.com> | 2019-11-06 21:58:28 -0800 |
---|---|---|
committer | Eric Christopher <echristo@gmail.com> | 2019-11-06 21:58:28 -0800 |
commit | 009e032634b3bd7fc32071ac2344b12142286477 (patch) | |
tree | bf6dd3433eecc1b18a4a227d5340dc8f29b36c5f /llvm/lib/Transforms/Vectorize/VPlan.cpp | |
parent | 9f10cc2d124c275f2e7a6764e168f6b75527e78f (diff) | |
download | bcm5719-llvm-009e032634b3bd7fc32071ac2344b12142286477.tar.gz bcm5719-llvm-009e032634b3bd7fc32071ac2344b12142286477.zip |
Temporarily Revert "[LV] Apply sink-after & interleave-groups as VPlan transformations (NFC)"
as it's causing assert failures.
This reverts commit 100e797adb433724a17c9b42b6533cd634cb796b.
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/VPlan.cpp')
-rw-r--r-- | llvm/lib/Transforms/Vectorize/VPlan.cpp | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/llvm/lib/Transforms/Vectorize/VPlan.cpp b/llvm/lib/Transforms/Vectorize/VPlan.cpp index bc32e54be72..4b80d1fb20a 100644 --- a/llvm/lib/Transforms/Vectorize/VPlan.cpp +++ b/llvm/lib/Transforms/Vectorize/VPlan.cpp @@ -275,35 +275,18 @@ void VPRegionBlock::execute(VPTransformState *State) { } void VPRecipeBase::insertBefore(VPRecipeBase *InsertPos) { - assert(!Parent && "Recipe already in some VPBasicBlock"); - assert(InsertPos->getParent() && - "Insertion position not in any VPBasicBlock"); Parent = InsertPos->getParent(); Parent->getRecipeList().insert(InsertPos->getIterator(), this); } -void VPRecipeBase::insertAfter(VPRecipeBase *InsertPos) { - assert(!Parent && "Recipe already in some VPBasicBlock"); - assert(InsertPos->getParent() && - "Insertion position not in any VPBasicBlock"); - Parent = InsertPos->getParent(); - Parent->getRecipeList().insertAfter(InsertPos->getIterator(), this); -} - -void VPRecipeBase::removeFromParent() { - assert(getParent() && "Recipe not in any VPBasicBlock"); - getParent()->getRecipeList().remove(getIterator()); - Parent = nullptr; -} - iplist<VPRecipeBase>::iterator VPRecipeBase::eraseFromParent() { - assert(getParent() && "Recipe not in any VPBasicBlock"); return getParent()->getRecipeList().erase(getIterator()); } void VPRecipeBase::moveAfter(VPRecipeBase *InsertPos) { - removeFromParent(); - insertAfter(InsertPos); + InsertPos->getParent()->getRecipeList().splice( + std::next(InsertPos->getIterator()), getParent()->getRecipeList(), + getIterator()); } void VPInstruction::generateInstruction(VPTransformState &State, |