------- Additional Comments From bangerth at dealii dot org 2005-01-31 00:56
-------
Here is a self-contained testcase:
--------------------------
struct A {
double values[3];
A () {
for (unsigned int i=0; i!=3; ++i)
values[i] = 0;
}
};
double f() {
A values[3];
return values[0].values[0];
}
int main () {
return (int)f();
}
------------------------
spec/src> /home/bangerth/bin/gcc-4.0-pre/bin/c++ -march=pentium4 -O
-ftree-vectorize x.cc -o x ; ./x
Segmentation fault
The segfault happens in this line:
0x08048400 <_Z1fv+96>: movapd %xmm0,(%eax)
Note, however, that as opposed to previous cases, the memory pointed to
is not allocated through malloc (in which case it was considered a glibc
bug), nor are we inside main (where it was also considered a system bug
to not align the stack for main() properly).
W.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19716