suppose if there are two statements in a for loop
Code:
for(i=0;i<n;i++)
{
A(I) = B ( I ) + C(I)
B(I + 2) = A(I - 1) + C(I -1)
A(I + 1) = B(2*I + 3) + 1
}
suppose if we run these for I values like 1,2,3
FOR I value 1
S(2) :A(2) = B(2) + C(2)
T(2) :B(4) = A(1) + C(1)
U(2) :A(3) = B(7) + 1
FOR I value 2
S(3) :A(3) = B(3) + C(3)
T(3) :B(5) = A(2) + C(2)
U(3) :A(4) = B(9) + 1
here in B(5) has to be wait for A(2).in sequential programming is concerned it is ok.suppose if it is parallel program it will create ambiguity.
how to identify this types of loop automatically in a program.