Command line: $ CXX="/mnt/svn/gcc-trunk/binary-157723-lto/bin/g++" $ FLAGS="-O1 -freorder-blocks-and-partition -ftree-vectorize -fgraphite-identity -m32 -mstackrealign" $ $CXX -fprofile-arcs $FLAGS testcase.c $ ./a.out $ $CXX -fprofile-use $FLAGS testcase.c testcase.c: In function 'int test_for2(int, int)': testcase.c:10:1: internal compiler error: vector VEC(dw_cfi_ref,heap) grow domain error, in output_cfis at dwarf2out.c:3346 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
The worse situation is when gcc is OOM-killed, or shows error message about not being able to allocate (random big number) bytes of memory: cc1plus: out of memory allocating 1305533456 bytes after a total of 0 bytes What happens is random, but "echo 0 > /proc/sys/kernel/randomize_va_space" seems to prevent the random behaviour. Tested revisions: r157723 - crash r157460 - crash r157326 - crash r157161 - OK r156293 - OK r153685 - OK Valgrind doesn't show any warning -- Summary: ICE: vector VEC(dw_cfi_ref,heap) grow domain error, in output_cfis at dwarf2out.c:3346 or OOM-killed Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: zsojka at seznam dot cz GCC host triplet: x86_64-pc-linux-gnu GCC target triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43540