------- Comment #32 from irar at il dot ibm dot com  2007-12-04 06:56 -------
(In reply to comment #30)
> Uh, sorry for being terse. If there are no loops, then "straight-line
> parallelization" [SLP] should vectorize your manually unrolled sequence in
> comment #24. 

Currently only loop-aware SLP is implemented, meaning the code must be enclosed
in a loop to get vectorized.

> You can look into testsuite/gcc.dg/vect/slp-*.c for some c code
> examples.
> 

Right. For example,

  for (i = 0; i < N; i++)
    {
      out[i*4] = a0;
      out[i*4 + 1] = a1;
      out[i*4 + 2] = a2;
      out[i*4 + 3] = a3;
    }

will be transformed into:

  for (i = 0; i < N; i++)
    {
      out[i*4:i*4+3] = {a0, a1, a2, a3};
    }

Ira


-- 


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

Reply via email to