------- Comment #6 from fxcoudert at gcc dot gnu dot org 2009-12-29 17:42 ------- I can confirm the segfault at -O3 with current trunk (rev. 155505) on x86_64-apple-darwin10.2.0. I also generated a (much) reduced testcase:
void K (int *gpwgts, int *badminpwgt, int *badmaxpwgt) { int i; for (i = 0; i < 10; i += 2) { badminpwgt[i] = badminpwgt[i+1] = gpwgts[i]+gpwgts[i]; badmaxpwgt[i] = badmaxpwgt[i+1] = gpwgts[i]+gpwgts[i]; } } The segfault backtrace is: Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: 13 at address: 0x0000000000000000 vect_analyze_slp (loop_vinfo=<value temporarily unavailable, due to optimizations>, bb_vinfo=<value temporarily unavailable, due to optimizations>) at gimple.h:33 33 DEF_VEC_P(gimple); (gdb) bt #0 vect_analyze_slp (loop_vinfo=<value temporarily unavailable, due to optimizations>, bb_vinfo=<value temporarily unavailable, due to optimizations>) at gimple.h:33 #1 0x00000001007bce67 in vect_analyze_loop (loop=<value temporarily unavailable, due to optimizations>) at ../../trunk/gcc/tree-vect-loop.c:1433 #2 0x00000001007ca08a in vectorize_loops () at ../../trunk/gcc/tree-vectorizer.c:219 #3 0x000000010058d7ae in execute_one_pass (pass=0x100c3ca00) at ../../trunk/gcc/passes.c:1561 #4 0x000000010058da7d in execute_pass_list (pass=0x100c3ca00) at ../../trunk/gcc/passes.c:1616 #5 0x000000010058da8f in execute_pass_list (pass=0x100c3c820) at ../../trunk/gcc/passes.c:1617 #6 0x000000010058da8f in execute_pass_list (pass=0x100c3be60) at ../../trunk/gcc/passes.c:1617 #7 0x00000001006b86e8 in tree_rest_of_compilation (fndecl=0x141609900) at ../../trunk/gcc/tree-optimize.c:413 #8 0x00000001008731e3 in cgraph_expand_function (node=<value temporarily unavailable, due to optimizations>) at ../../trunk/gcc/cgraphunit.c:1544 #9 0x00000001008760da in cgraph_optimize () at ../../trunk/gcc/cgraphunit.c:1623 #10 0x00000001008766bd in cgraph_finalize_compilation_unit () at ../../trunk/gcc/cgraphunit.c:1093 #11 0x000000010001f2a2 in c_write_global_declarations () at ../../trunk/gcc/c-decl.c:9490 #12 0x000000010064e322 in toplev_main (argc=4, argv=0x7fff5fbff5d0) at ../../trunk/gcc/toplev.c:1061 #13 0x00000001000008b4 in start () -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fxcoudert at gcc dot gnu dot | |org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |ice-on-valid-code Known to fail| |4.5.0 Last reconfirmed|0000-00-00 00:00:00 |2009-12-29 17:42:02 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41956