[PATCH] D24833: [LoopDataPrefetch/AArch64] Allow selective prefetching of symbolic strided accesses

Adam Nemet via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 23 11:47:09 PDT 2016


anemet added a comment.

In https://reviews.llvm.org/D24833#549828, @bmakam wrote:

> In https://reviews.llvm.org/D24833#549827, @anemet wrote:
>
> > > Irregular streams typically consist of array accesses in which a subscripted variable
> >
> > >  appears in one of the subscript positions, such as: A[B[i]].
> >
> > > 
> >
> > > For example:
> >
> > > 
> >
> > >   for (unsigned i = 0; i < 100; i++)
> >
> > >     A[i + 1] = A[Stride * i] + B[i];
> >
> >
> > There is something confusing here.  Is Stride loop-variant here?  Otherwise I don't see how this is a A[B[i]]-style access.
>
>
> Sorry for the confusion. What I meant was address of B[i] can be represented as i*sizeof(B), so sizeof(B) is the loop-invariant stride here.


Sorry but I still don't understand this.  Can you please elaborate on where the A[B[i]] style access is in this loop?


https://reviews.llvm.org/D24833





More information about the llvm-commits mailing list