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

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
      Known to work|                            |5.3.0
   Last reconfirmed|                            |2016-01-17
          Component|c                           |tree-optimization
                 CC|                            |trippels at gcc dot gnu.org
     Ever confirmed|0                           |1
            Summary|ice in                      |[6 Regression] ice in
                   |vect_get_vec_def_for_operan |vect_get_vec_def_for_operan
                   |d, at                       |d, at
                   |tree-vect-stmts.c:1379 with |tree-vect-stmts.c:1379 with
                   |-O3                         |-O3
      Known to fail|                            |6.0

--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
markus@x4 tmp % cat bug266.c
int a, b;
void fn1() {
  int c;
  char *d;
  for (; a; ++a) {
    int e, f;
    e = d[a];
    if (!e && f || !f && e)
      ++c;
  }
  if (c)
    b = .499;
}

markus@x4 tmp % gcc -c -O3 bug266.c
bug266.c: In function ‘fn1’:
bug266.c:2:6: internal compiler error: in vect_get_vec_def_for_operand, at
tree-vect-stmts.c:1379
 void fn1() {
      ^~~

0xd13597 vect_get_vec_def_for_operand(tree_node*, gimple*, tree_node*)
        ../../gcc/gcc/tree-vect-stmts.c:1379
0xd17cb5 vectorizable_condition(gimple*, gimple_stmt_iterator*, gimple**,
tree_node*, int, _slp_tree*)
        ../../gcc/gcc/tree-vect-stmts.c:7613
0xd2c0de vect_transform_stmt(gimple*, gimple_stmt_iterator*, bool*, _slp_tree*,
_slp_instance*)
        ../../gcc/gcc/tree-vect-stmts.c:8228
0xd32175 vect_transform_loop(_loop_vec_info*)
        ../../gcc/gcc/tree-vect-loop.c:6872
0xd4f0f2 vectorize_loops()
        ../../gcc/gcc/tree-vectorizer.c:554

Reply via email to