https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122587
Bug ID: 122587
Summary: Vectorizer cost model can make use of ranges
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: rguenth at gcc dot gnu.org
Target Milestone: ---
While the vectorizer can make use of ranges to some extent we get
masked epilogues for the following loop on x86_64 with znver[45] arch/tuning.
int a[1024], b[1024], c[1024];
void foo(int n)
{
if (n != 4 && n != 16)
return;
for (int i = 0; i < n; ++i)
a[i] = b[i] + c[i];
}