------- Comment #2 from jakub at gcc dot gnu dot org 2008-09-11 08:19 ------- vect_analyze_slp_instance/vect_supported_load_permutation_p/vect_supported_slp_permutation_p are buggy. 0x0000000000a51e93 in vect_supported_slp_permutation_p (instance=0x7fffe4bfafd8) at ../../gcc/tree-vect-analyze.c:3157 3157 tmp_loads[index] = load; (gdb) p *instance $23 = {root = 0x7fffe4d95fd0, group_size = 2, unrolling_factor = 8, cost = {outside_of_loop = 0, inside_of_loop = 33}, load_permutation = 0x7fffe512cfb8, loads = 0x7fffe512efb8} (gdb) p *instance->load_permutation $24 = {base = {num = 12, alloc = 16, vec = {5}}} (gdb) x/12w instance->load_permutation->base.vec 0x7fffe512cfc0: 0x00000005 0x00000005 0x00000002 0x00000002 0x7fffe512cfd0: 0x00000004 0x00000004 0x00000001 0x00000001 0x7fffe512cfe0: 0x00000003 0x00000003 0x00000000 0x00000000 (gdb) p index $25 = 5 So it is writing well past the end of tmp_loads (which has group_size == 2 entries).
-- jakub at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |irar at gcc dot gnu dot org AssignedTo|jakub at gcc dot gnu dot org|unassigned at gcc dot gnu | |dot org Status|ASSIGNED |NEW Last reconfirmed|2008-09-11 07:42:26 |2008-09-11 08:19:46 date| | Target Milestone|4.4.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37474