[llvm] b178c2d - [SandboxVec][DAG] Fix trim schedule

Vasileios Porpodas via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 25 09:43:59 PST 2025


Author: Vasileios Porpodas
Date: 2025-01-25T09:42:14-08:00
New Revision: b178c2d63e0701655046dfd2ead195b36e0df397

URL: https://github.com/llvm/llvm-project/commit/b178c2d63e0701655046dfd2ead195b36e0df397
DIFF: https://github.com/llvm/llvm-project/commit/b178c2d63e0701655046dfd2ead195b36e0df397.diff

LOG: [SandboxVec][DAG] Fix trim schedule

Fix trimSchedule by skipping instructions without a DAG Node.

Added: 
    

Modified: 
    llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp b/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
index 06c1ef6b6d5ae7..9ec5d830d8b4a8 100644
--- a/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
+++ b/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
@@ -172,6 +172,8 @@ void Scheduler::trimSchedule(ArrayRef<Instruction *> Instrs) {
   for (auto *I = LowestI, *E = TopI->getPrevNode(); I != E;
        I = I->getPrevNode()) {
     auto *N = DAG.getNode(I);
+    if (N == nullptr)
+      continue;
     if (auto *SB = N->getSchedBundle())
       eraseBundle(SB);
   }


        


More information about the llvm-commits mailing list