[polly] r214665 - Do allow negative offsets in the outermost array dimension

Johannes Doerfert jdoerfert at codeaurora.org
Sun Aug 3 23:50:57 PDT 2014


On 08/04, Tobias Grosser wrote:
> On 04/08/2014 06:39, Johannes Doerfert wrote:
> >What do you think?
> 
> It is not obvious to me. The above test case looks as follows:
> 
> +; void foo(long n, long m, long o, double A[n][m][o]) {
> +;
> +;   for (long i = 0; i < 100; i++)
> +;     for (long j = 0; j < 150; j++)
> +;       for (long k = 0; k < 200; k++)
> +;         A[i][j][k] = 1.0;
> +; }
> 
> The constraints we derive are:
> 
> +; CHECK:   [m, o] -> {  : m >= 150 and o >= 200 }
> 
> Those are on the inner dimensions exactly as I expect.
> 
> What kind of constraints would you expect?
I expected the two outer dimensions, but apparently I didn't understand the
delinearization yet.

However, do we compute the size of the outermost dimension (here n)? We
need that for privatization and runtime alias checks.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 213 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140803/adabf339/attachment.sig>


More information about the llvm-commits mailing list