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

Attachment: 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

Reply via email to