All:

The scalar and array reduction patterns can be identified if the result of 
commutative updates
Is applied to the same scalar or array variables on the LHS with +, *, Min or 
Max. Thus the reduction pattern identified with 
the commutative update help  in vectorization or parallelization.

For the following code
For(j = 0; j <= N;j++)
{
   y = d[j];
    For( I = 0 ; I  <8 ; i++)
        X(a[i]) = X(a[i]) + c[i] * y;
}

Fig(1).

For the above code with the reduction pattern on X with respect to the outer 
loop  exhibits the commutative updates on + can be identified
In gcc as reduction pattern with respect to outer loops. I wondering whether 
this can be identified as reduction pattern which can reduce to vectorized
Code because of the X is indexed by another array as thus the access of X is 
not affine expression.

Does the above code can be identified as reduction pattern and transform to the 
vectorized or parallelize code.

Thoughts?

Thanks & Regards
Ajit


Reply via email to