Displaying 2 results from an estimated 2 matches for "cannonical_induction_variable".
2013 Oct 23
0
[LLVMdev] First attempt at recognizing pointer reduction
...ductions we store the start value. When we come to actually vectorize the loop we create a canonical induction variable that starts at zero and strides by the vector factor (VF). Any use of the original pointer induction variable in the vectorized loop is simply:
Builder.CreateGEP(II.StartValue, cannonical_induction_variable);
For a non-unit pointer induction this would be
Builder.CreateGEP(II.StartValue, stride * cannonical_induction_variable);
(I have simplified the problem a little the code in the vectorizer is a little bit more complicated but essentially boils down to the above)
Thanks,
Arnold
>
> c...
2013 Oct 23
2
[LLVMdev] First attempt at recognizing pointer reduction
On 23 October 2013 16:05, Arnold Schwaighofer <aschwaighofer at apple.com>wrote:
> In the examples you gave there are no reduction variables in the loop
> vectorizer’s sense. But, they all have memory accesses that are strided.
>
This is what I don't get. As far as I understood, a reduction variable is
the one that aggregates the computation done by the loop, and is used