[llvm] 2e50760 - [SLP] Add assert that entities are scheduled as expected
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 15 12:34:15 PST 2022
Author: Philip Reames
Date: 2022-02-15T12:21:49-08:00
New Revision: 2e507607754c25fae82c35d93d2ab53395be6ff8
URL: https://github.com/llvm/llvm-project/commit/2e507607754c25fae82c35d93d2ab53395be6ff8
DIFF: https://github.com/llvm/llvm-project/commit/2e507607754c25fae82c35d93d2ab53395be6ff8.diff
LOG: [SLP] Add assert that entities are scheduled as expected
Requested in D118538
Added:
Modified:
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
index d29440a8d1566..ca1922e80c2cf 100644
--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
@@ -7952,6 +7952,17 @@ void BoUpSLP::scheduleBlock(BlockScheduling *BS) {
BS->verify();
#endif
+#ifndef NDEBUG
+ // Check that all schedulable entities got scheduled
+ for (auto *I = BS->ScheduleStart; I != BS->ScheduleEnd; I = I->getNextNode()) {
+ BS->doForAllOpcodes(I, [&](ScheduleData *SD) {
+ if (SD->isSchedulingEntity() && SD->hasValidDependencies()) {
+ assert(SD->IsScheduled && "must be scheduled at this point");
+ }
+ });
+ }
+#endif
+
// Avoid duplicate scheduling of the block.
BS->ScheduleStart = nullptr;
}
More information about the llvm-commits
mailing list