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

--- Comment #5 from amker at gcc dot gnu.org ---
Well, it is iv (maybe biv) in this case:
  _24 = j_11 + 1;
is in irreducible sub-loop, but _24 is a loop invariant wrto the sub-loop.  But
we don't have such information in GCC.  Thus mark_bivs skips it at below code:

      /* If the increment is in the subloop, ignore it.  */
      incr_bb = gimple_bb (SSA_NAME_DEF_STMT (var));
      if (incr_bb->loop_father != data->current_loop
          || (incr_bb->flags & BB_IRREDUCIBLE_LOOP))
        continue;

Reply via email to