https://bugs.llvm.org/show_bug.cgi?id=40946
Bug ID: 40946
Summary: Missed Loop vectorization for global loop variants
Product: tools
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: opt
Assignee: unassignedb...@nondot.org
Reporter: balarishi.bhog...@amd.com
CC: llvm-bugs@lists.llvm.org
If the loop variant variables are functional parameters of point type, then
loop vectorizations happens.
But, When loop variant variables are global, loop vectorization is not taking
place.
===========
// Flag: -O3 -fno-unroll-loops -c
char *a, *b, *c;
void loop_not_vectorized()
{
for (int i = 0; i < 1800; i++) // Loop not vectorized
{
a[i] = b[i] * c[i];
}
}
===========
// Flag: -O3 -fno-unroll-loops -c
void loop_vectorized(char *a, char *b, char *c)
{
for (int i = 0; i < 1800; i++) // Loop vectorized
{
a[i] = b[i] * c[i];
}
}
===========
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs