[PATCH] D90561: [VPlan] Use VPDeffor VPWidenGEPRecipe.
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 5 13:00:41 PST 2020
fhahn updated this revision to Diff 303236.
fhahn added a comment.
Updated to keep VPWidenGEPRecipe a VPValue which is then added to its VPDef. This simplifies things a bit.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D90561/new/
https://reviews.llvm.org/D90561
Files:
llvm/lib/Transforms/Vectorize/VPlan.h
Index: llvm/lib/Transforms/Vectorize/VPlan.h
===================================================================
--- llvm/lib/Transforms/Vectorize/VPlan.h
+++ llvm/lib/Transforms/Vectorize/VPlan.h
@@ -894,21 +894,23 @@
};
/// A recipe for handling GEP instructions.
-class VPWidenGEPRecipe : public VPRecipeBase, public VPValue, public VPUser {
+class VPWidenGEPRecipe : public VPRecipeBase, public VPDef, public VPValue {
bool IsPtrLoopInvariant;
SmallBitVector IsIndexLoopInvariant;
public:
template <typename IterT>
VPWidenGEPRecipe(GetElementPtrInst *GEP, iterator_range<IterT> Operands)
- : VPRecipeBase(VPRecipeBase::VPWidenGEPSC), VPValue(VPWidenGEPSC, GEP),
- VPUser(Operands), IsIndexLoopInvariant(GEP->getNumIndices(), false) {}
+ : VPRecipeBase(VPRecipeBase::VPWidenGEPSC), VPDef(Operands),
+ VPValue(VPWidenGEPSC, GEP, this),
+ IsIndexLoopInvariant(GEP->getNumIndices(), false) {}
template <typename IterT>
VPWidenGEPRecipe(GetElementPtrInst *GEP, iterator_range<IterT> Operands,
Loop *OrigLoop)
- : VPRecipeBase(VPWidenGEPSC), VPValue(VPValue::VPVWidenGEPSC, GEP),
- VPUser(Operands), IsIndexLoopInvariant(GEP->getNumIndices(), false) {
+ : VPRecipeBase(VPWidenGEPSC), VPDef(Operands),
+ VPValue(VPValue::VPVWidenGEPSC, GEP, this),
+ IsIndexLoopInvariant(GEP->getNumIndices(), false) {
IsPtrLoopInvariant = OrigLoop->isLoopInvariant(GEP->getPointerOperand());
for (auto Index : enumerate(GEP->indices()))
IsIndexLoopInvariant[Index.index()] =
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D90561.303236.patch
Type: text/x-patch
Size: 1582 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201105/7a3779a7/attachment.bin>
More information about the llvm-commits
mailing list