https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61965
--- Comment #1 from Sabrina Souto <sabrinadfs at gmail dot com> --- It happened again, now for this test: ../gcc/testsuite/gcc.dg/pr39794.c Hera is the line executed: /home/sabrina/gcc/objdir/gcc/xgcc -B/home/sabrina/gcc/objdir/gcc/ /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c -fno-diagnostics-show-caret -O2 -funroll-loops -fcheck-data-deps -o ./pr39794.c Here is the testcode (../gcc/testsuite/gcc.dg/pr39794.c): ---------------------------------------------------------------------------- /* PR rtl-optimization/39794 */ /* { dg-do run } */ /* { dg-options "-O2 -funroll-loops" } */ extern void abort (); void foo (int *a, int n) { int i; for (i = 0; i < n; i++) { a[i] *= 2; a[i + 1] = a[i - 1] + a[i - 2]; } } int a[16]; int ref[16] = { 0, 1, 4, 2, 10, 12, 24, 44, 72, 136, 232, 416, 736, 1296, 2304, 2032 }; int main () { int i; for (i = 0; i < 16; i++) a[i] = i; foo (a + 2, 16 - 3); for (i = 0; i < 16; i++) if (ref[i] != a[i]) abort (); return 0; } ---------------------------------------------------------------------------- Here is the output: ---------------------------------------------------------------------------- (Number of distance vectors differ: Banerjee has 1, Omega has 0. Banerjee dist vectors: 1 Omega dist vectors: data dependence relation: (Data Dep: #(Data Ref: # bb: 5 # stmt: _9 = *_8; # ref: *_8; # base_object: *a_5(D); # Access function 0: {0B, +, 4}_1 #) #(Data Ref: # bb: 5 # stmt: *_14 = _21; # ref: *_14; # base_object: *a_5(D); # Access function 0: {4B, +, 4}_1 #) access_fn_A: {0B, +, 4}_1 access_fn_B: {4B, +, 4}_1 (subscript iterations_that_access_an_element_twice_in_A: [1 + 1 * x_1] last_conflict: 2147483646 iterations_that_access_an_element_twice_in_B: [0 + 1 * x_1] last_conflict: 2147483646 (Subscript distance: 1 )) inner loop index: 0 loop nest: (1 ) ) ) /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c: In function ‘foo’: /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c:8:1: internal compiler error: in compute_affine_dependence, at tree-data-ref.c:4170 0xbcc0d2 compute_affine_dependence(data_dependence_relation*, loop*) .././../gcc-4.8.2/gcc/tree-data-ref.c:4169 0xbce98d compute_all_dependences(vec<data_reference*, va_heap, vl_ptr>, vec<data_dependence_relation*, va_heap, vl_ptr>*, vec<loop*, va_heap, vl_ptr>, bool) .././../gcc-4.8.2/gcc/tree-data-ref.c:4241 0xbcef83 compute_data_dependences_for_loop(loop*, bool, vec<loop*, va_heap, vl_ptr>*, vec<data_reference*, va_heap, vl_ptr>*, vec<data_dependence_relation*, va_heap, vl_ptr>*) .././../gcc-4.8.2/gcc/tree-data-ref.c:4531 0xbcf18f analyze_all_data_dependences .././../gcc-4.8.2/gcc/tree-data-ref.c:4639 0xbcf18f tree_check_data_deps() .././../gcc-4.8.2/gcc/tree-data-ref.c:4687 0x8b62a7 check_data_deps .././../gcc-4.8.2/gcc/tree-ssa-loop.c:330 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. sabrina@cioba:~/gcc$ clear sabrina@cioba:~/gcc$ /home/sabrina/gcc/objdir/gcc/xgcc -B/home/sabrina/gcc/objdir/gcc/ /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c -fno-diagnostics-show-caret -O2 -funroll-loops -fcheck-data-deps -o ./pr39794.c (Number of distance vectors differ: Banerjee has 1, Omega has 0. Banerjee dist vectors: 1 Omega dist vectors: data dependence relation: (Data Dep: #(Data Ref: # bb: 5 # stmt: _9 = *_8; # ref: *_8; # base_object: *a_5(D); # Access function 0: {0B, +, 4}_1 #) #(Data Ref: # bb: 5 # stmt: *_14 = _21; # ref: *_14; # base_object: *a_5(D); # Access function 0: {4B, +, 4}_1 #) access_fn_A: {0B, +, 4}_1 access_fn_B: {4B, +, 4}_1 (subscript iterations_that_access_an_element_twice_in_A: [1 + 1 * x_1] last_conflict: 2147483646 iterations_that_access_an_element_twice_in_B: [0 + 1 * x_1] last_conflict: 2147483646 (Subscript distance: 1 )) inner loop index: 0 loop nest: (1 ) ) ) /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c: In function ‘foo’: /home/sabrina/gcc/gcc-4.8.2/gcc/testsuite/gcc.dg/pr39794.c:8:1: internal compiler error: in compute_affine_dependence, at tree-data-ref.c:4170 0xbcc0d2 compute_affine_dependence(data_dependence_relation*, loop*) .././../gcc-4.8.2/gcc/tree-data-ref.c:4169 0xbce98d compute_all_dependences(vec<data_reference*, va_heap, vl_ptr>, vec<data_dependence_relation*, va_heap, vl_ptr>*, vec<loop*, va_heap, vl_ptr>, bool) .././../gcc-4.8.2/gcc/tree-data-ref.c:4241 0xbcef83 compute_data_dependences_for_loop(loop*, bool, vec<loop*, va_heap, vl_ptr>*, vec<data_reference*, va_heap, vl_ptr>*, vec<data_dependence_relation*, va_heap, vl_ptr>*) .././../gcc-4.8.2/gcc/tree-data-ref.c:4531 0xbcf18f analyze_all_data_dependences .././../gcc-4.8.2/gcc/tree-data-ref.c:4639 0xbcf18f tree_check_data_deps() .././../gcc-4.8.2/gcc/tree-data-ref.c:4687 0x8b62a7 check_data_deps .././../gcc-4.8.2/gcc/tree-ssa-loop.c:330 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. ---------------------------------------------------------------------------- Someone could also confirm this one? Thanks, Sabrina de F. Souto.