This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Overlap Iterations in Dependence testing
- From: Prashant Singh Rawat <prashant dot srawat86 at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Fri, 6 May 2011 02:52:23 +0530
- Subject: Overlap Iterations in Dependence testing
In gcc 4.6.0, The part of dump (*.ckdd) finding the dependency using
Banerjee's Solver for the program
| int a[256];
| int main ()
| {
| ? int i;
|? ? for (i=0; i<200; i++)
|? ? ? ?a[i+21] = a[i*2] + 2;
| }
gives,
chrec_a = {0, +, 2}_1
chrec_b = {21, +, 1}_1
and the overlap_iterations are :
overlap_iterations_a = [11 + 1 * x_1]
overlap_iterations_b = [1 + 2 * x_1]
What I understood was that overlap_iterations give the solution to the
Diophantine equation. In that light, is this solution not incorrect?
Or there is something wrong with my understanding?
Also, what does last_conflict hold? The last iteration number of
source that causes conflict, or the total number of iterations that
cause conflict?
In case of variable dependence distance, even the last_conflict seems
to have wrong value. In this example, it is 63. Why?
--
With regards,
Prashant Singh Rawat
http://www.cse.iitb.ac.in/~prashantr