Hi, When ifcvt version a loop, it sets dont_vectorize to the scalar loop. If the vector loop is not vectorized and removed, the scalar loop is still left with dont_vectorize. As a result, BB vectorization will not happen.
This patch adds a new attribute called dont_loop_vectorize (that is different from general dont_vectorize) specifically for loops versioned. BB vectorization does not need to honour this and still can vectorize. Bootstrapped and regression tested on aarch64-linux-gnu with no new regressions. Is this OK? Thanks, Kugan
0001-PATCH-Fix-SLP-when-ifcvt-versioned-loop-is-not-vecto.patch
Description: 0001-PATCH-Fix-SLP-when-ifcvt-versioned-loop-is-not-vecto.patch