Hi All,
I'm trying to tile a loop with parametric loop bounds. The loop is as follows:
for(i=0; i<k; i++){
for(j=0; j<k; j++){
a[i][j] = (a[i][j]*a[j][i])+i+j;
}
}
i, j, k are unsigned integer variables.
The graphite scop detection algorithm is not able to detect the above loop nest as a scop.
Upon premature diagnosis, I learnt that "graphite_can_represent_loop()" fails and hence result.difficult is set to true.
"graphite_can_represent_loop()" fails because "niter_desc.control.no_overflow" is "false".
What is the significance of "niter_desc.control.no_overflow"?
Can any one give me pointers as to why this loop cannot be tiled?
How to modify the loop such that it can be tiled?
Thanks and Regards,
Abhilash Bhandari
MS Scholar
IIT Madras