[SLPVectorizer] Fix crash in vectorizeChainsInBlock for scalable vector.
authorCaroline Concatto <caroline.concatto@arm.com>
Mon, 21 Jun 2021 14:22:58 +0000 (15:22 +0100)
committerCaroline Concatto <caroline.concatto@arm.com>
Mon, 5 Jul 2021 11:43:41 +0000 (12:43 +0100)
commitb868a2d2c69c20ba0f906354986354b84540e6c0
tree0f4a9ed94eaf8ac3bf102109a57c2347d594ff8a
parent85255a04e5729c03214c51177aa885c055f3e242
[SLPVectorizer] Fix crash in vectorizeChainsInBlock for scalable vector.

The function vectorizeChainsInBlock does not support scalable vector,
because function like canReuseExtract and isCommutative in the code
path assert with scalable vectors.

This patch avoids vectorizing blocks that have extract instructions with scalable
vector..

Differential Revision: https://reviews.llvm.org/D104809
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
llvm/test/Transforms/SLPVectorizer/AArch64/scalable-vector.ll