for a loop like 1 for(i=0;i<N;i++) 2 for(j=0;j<N;j++) 3 a[i][j] = a[i][j]+b[i][j];
GCC 4.3.* is unable to get the information for the inner loop that array reference 'a' is alias of each other and generates code for runtime aliasing check during vectorization. Is it necessary to recompute all information in loop_vec_info in function vect_analyze_ref for analysis of inner loop also, as most of the information is similar for the outer loop for the program. Similarly, outer loop is able to compute correct chrec i.e. NULL , for array 'a' reference, while innerloop has chrec as chrec_dont_know, and therfore complaint about runtime alias check.