[llvm] r342201 - Fix for the buildbot failure http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/23635
Hideki Saito via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 13 19:02:58 PDT 2018
Author: hsaito
Date: Thu Sep 13 19:02:57 2018
New Revision: 342201
URL: http://llvm.org/viewvc/llvm-project?rev=342201&view=rev
Log:
Fix for the buildbot failure http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/23635
from the commit (r342197) of https://reviews.llvm.org/D50820.
Modified:
llvm/trunk/lib/Transforms/Vectorize/VPlan.cpp
llvm/trunk/lib/Transforms/Vectorize/VPlan.h
llvm/trunk/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp
Modified: llvm/trunk/lib/Transforms/Vectorize/VPlan.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/VPlan.cpp?rev=342201&r1=342200&r2=342201&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/VPlan.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/VPlan.cpp Thu Sep 13 19:02:57 2018
@@ -205,10 +205,6 @@ void VPBasicBlock::execute(VPTransformSt
Value *IRCBV = CBV->getUnderlyingValue();
assert(IRCBV && "Unexpected null underlying value for condition bit");
- // Delete the condition bit at this point - it should be no longer needed.
- delete CBV;
- setCondBit(nullptr);
-
// Condition bit value in a VPBasicBlock is used as the branch selector. In
// the VPlan-native path case, since all branches are uniform we generate a
// branch instruction using the condition value from vector lane 0 and dummy
Modified: llvm/trunk/lib/Transforms/Vectorize/VPlan.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/VPlan.h?rev=342201&r1=342200&r2=342201&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/VPlan.h (original)
+++ llvm/trunk/lib/Transforms/Vectorize/VPlan.h Thu Sep 13 19:02:57 2018
@@ -1118,6 +1118,9 @@ private:
/// Holds the VPLoopInfo analysis for this VPlan.
VPLoopInfo VPLInfo;
+ /// Holds the condition bit values built during VPInstruction to VPRecipe transformation.
+ SmallVector<VPValue *, 4> VPCBVs;
+
public:
VPlan(VPBlockBase *Entry = nullptr) : Entry(Entry) {}
@@ -1128,6 +1131,8 @@ public:
delete MapEntry.second;
for (VPValue *Def : VPExternalDefs)
delete Def;
+ for (VPValue *CBV : VPCBVs)
+ delete CBV;
}
/// Generate the IR code for this VPlan.
@@ -1152,6 +1157,11 @@ public:
VPExternalDefs.insert(VPVal);
}
+ /// Add \p CBV to the vector of condition bit values.
+ void addCBV(VPValue *CBV) {
+ VPCBVs.push_back(CBV);
+ }
+
void addVPValue(Value *V) {
assert(V && "Trying to add a null Value to VPlan");
assert(!Value2VPValue.count(V) && "Value already exists in VPlan");
Modified: llvm/trunk/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp?rev=342201&r1=342200&r2=342201&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp Thu Sep 13 19:02:57 2018
@@ -33,6 +33,7 @@ void VPlanHCFGTransforms::VPInstructions
if (auto *CondBit = VPBB->getCondBit()) {
auto *NCondBit = new VPValue(CondBit->getUnderlyingValue());
VPBB->setCondBit(NCondBit);
+ Plan->addCBV(NCondBit);
}
}
for (VPBlockBase *Base : RPOT) {
More information about the llvm-commits
mailing list