https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66165

            Bug ID: 66165
           Summary: vect_transform_slp_perm_load: vec out of range ?
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

Created attachment 35551
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35551&action=edit
gzipped C++ source code

The attached code, when compiled by gcc trunk dated 20150513
and with flag -O3, says this:

$ ../results/bin/g++ -c -O3 bug206.cc
renderers/agg/src/agg_curves.cpp: In member function ‘unsigned int
mapserver::curve3_inc::vertex(double*, double*)’:
renderers/agg/src/agg_curves.cpp:101:14: internal compiler error: Segmentation
fault
0xd8357f crash_signal
    ../../src/trunk/gcc/toplev.c:380
0xfe20ad vec<unsigned int, va_heap, vl_embed>::operator[](unsigned int)
    ../../src/trunk/gcc/vec.h:736
0xfe20ad vec<unsigned int, va_heap, vl_ptr>::operator[](unsigned int)
    ../../src/trunk/gcc/vec.h:1202
0xfe20ad vect_transform_slp_perm_load(_slp_tree*, vec<tree_node*, va_heap,
vl_ptr>, gimple_stmt_iterator*, int, _slp_instance*, bool)
    ../../src/trunk/gcc/tree-vect-slp.c:3292
0xfe4218 vect_supported_load_permutation_p
    ../../src/trunk/gcc/tree-vect-slp.c:1419
0xfe4218 vect_analyze_slp_instance
    ../../src/trunk/gcc/tree-vect-slp.c:1826
0xfe55b6 vect_analyze_slp(_loop_vec_info*, _bb_vec_info*, unsigned int)
    ../../src/trunk/gcc/tree-vect-slp.c:1896
0xfe5a63 vect_slp_analyze_bb_1
    ../../src/trunk/gcc/tree-vect-slp.c:2430
0xfe5a63 vect_slp_analyze_bb(basic_block_def*)
    ../../src/trunk/gcc/tree-vect-slp.c:2560
0xfe8eb2 execute
    ../../src/trunk/gcc/tree-vectorizer.c:662
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
$

Line tree-vect-slp.c:3292 is

  i = SLP_TREE_LOAD_PERMUTATION (node)[k];

Reply via email to