[llvm] [SandboxVectorizer] Implement topdown/bottomup vectorizers in unison (PR #205249)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 9 18:51:03 PDT 2026
================
@@ -285,9 +287,55 @@ Action *BottomUpVec::vectorizeRec(ArrayRef<Value *> Bndl,
DebugBndlCnt++ >= StopBundle && StopBundle != StopBundleDisabled;
LLVM_DEBUG(dbgs() << DEBUG_PREFIX << "canVectorize() Bundle:\n";
VecUtils::dump(Bndl));
- const auto &LegalityRes = StopForDebug ? Legality.getForcedPackForDebugging()
- : Legality.canVectorize(Bndl);
+ const auto &LegalityRes =
+ StopForDebug
+ ? Legality.getForcedPackForDebugging()
+ : Legality.canVectorize(Bndl,
+ /*SkipScheduling=*/Legality.getDirection() ==
----------------
vporpo wrote:
The issue is that the scheduler defaults to bottom-up and we are attempting to schedule top-down. This is not producing a meaningful error message at the moment (it is one of the things that need to be fixed). I just created https://github.com/llvm/llvm-project/pull/208602 which adds the direction argument to Scheduler/Legality. So once you rebase on top of that and set the scheduling direction to `Dir` upon construction you should be good to go.
https://github.com/llvm/llvm-project/pull/205249
More information about the llvm-commits
mailing list