[Bug middle-end/30442] Expanded array initialization can use memset builtin function

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jun 5 10:50:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30442

--- Comment #7 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-06-05 10:50:22 UTC ---
The

long long test2(void)
{
  long long a[32];
  int i;

  for (i = 0; i < 32; i++)
    a[i] = 0;

  return foo(a);
}

loop is transformed to memset at -O3.  The unrolled version is not "re-rolled"
still, and basic-block vectorization does not catch it because of the
call in the basic-block.  I'm trying to fix that.



More information about the Gcc-bugs mailing list