This fixes an infinite loop if isa<T>(II->getOperand(1)) is true.
Return an all-0 bitvector, which is done along other error paths instead
of the continue, which leads to an infinite loop because Base
is not updated.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | ||
---|---|---|
379 | Move Base = II->getOperand(0); before the if statement instead, it is not an error path |
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | ||
---|---|---|
379 | Updated, it looks like we are still missing test coverage for cases where it actually makes a difference though. |
Move Base = II->getOperand(0); before the if statement instead, it is not an error path