------- Comment #9 from martin at mpa-garching dot mpg dot de 2006-03-03 10:11 ------- I managed to narrow down the location of the problem:
The segfault occurs in libbench2/verify-lib.c, in static void assign_conj(C *Ac, C *A, int rank, const bench_iodim *dim, int stride); I added the following line at the very beginning of this function for diagnosis: printf("assign_conj %p %p %d %d %d\n",Ac, A,rank,stride, dim[rank - 1].n); Then I compiled with CFLAGS="-O1 -ftree-vrp -finline-functions" ./configure make and started the following test: tests/bench --verify obr10x5x13*6 The output is assign_conj 0x80e8e20 0x80e6da0 0 650 0 assign_conj 0x80e8a10 0x80e71b0 0 650 0 assign_conj 0x80e8600 0x80e75c0 0 650 0 assign_conj 0x80e81f0 0x80e79d0 0 650 0 assign_conj 0x80e6cd0 0x80e6a60 1 65 10 assign_conj 0x80e6cd0 0x80e6a60 0 650 0 assign_conj 0x80e9160 0x80e6e70 0 650 0 assign_conj 0x880e9153 0x80e7280 0 650 0 Segmentation fault The first pointer value in the last line definitely looks wrong, and I can't explain it by looking at the code. This does feel like a problem in VRP, but I can't prove it... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26528