Displaying 3 results from an estimated 3 matches for "sceviterator".
2012 Sep 12
1
[LLVMdev] Multi-dimensional array accesses in LLVM-IR | Thoughts
...ne iterator can have two coefficients (e.g., A[k][k][.]). Or
a "coefficient" may actually be a constant (e.g., A[42][.][.]) or missing in
one access (e.g., A[0][.][.]) so determining the coefficients is non-trivial
(but not too difficult I guess).
> I would guess that we could write a SCEVIterator, that analyzes the SCEVs and guesses
> the dimension sizes.
I'm not sure if this cane be done on the SCEV directly (instead of polynomials)
for cases that are more complex than products of parameters but I haven't
thought about it thoroughly. OTOH, add recursions should be of the right...
2012 Sep 12
0
[LLVMdev] Multi-dimensional array accesses in LLVM-IR | Thoughts
...icients (e.g.,
> A[k][k][.]). Or a "coefficient" may actually be a constant (e.g.,
> A[42][.][.]) or missing in one access (e.g., A[0][.][.]) so
> determining the coefficients is non-trivial (but not too difficult I
> guess).
>
> > I would guess that we could write a SCEVIterator, that analyzes the
> > SCEVs and guesses the dimension sizes.
>
> I'm not sure if this cane be done on the SCEV directly (instead of
> polynomials) for cases that are more complex than products of
> parameters but I haven't thought about it thoroughly. OTOH, add
> rec...
2012 Sep 12
5
[LLVMdev] Multi-dimensional array accesses in LLVM-IR | Thoughts
...'step' of the SCEVAddRec
repressions. Even in the last example which contains parameters both for the
sizes and the offsets, the parameters for the sizes are the only ones that
appear on the right hand sides ('8 * %m * %o' and '8 * %o').
I would guess that we could write a SCEVIterator, that analyzes the SCEVs and guesses
the dimension sizes. After having written that, it should be possible to write
another SCEVIterator that given the dimension sizes can separate the different
dimensions of a SCEV.
I doubt we will always be able to prove that our guess is correct, but we could
a...