https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90270
--- Comment #11 from bin cheng <amker at gcc dot gnu.org> --- For the record, this test reveals another issue that original iv cand is not considered: Group 0: Type: REFERENCE ADDRESS Use 0.0: At stmt: _1 = final_counts[i_21]; At pos: final_counts[i_21] IV struct: Type: unsigned int * Base: (unsigned int *) &final_counts Step: 4 Object: (void *) &final_counts Biv: N Overflowness wrto loop niter: Overflow Candidate 7: Incr POS: orig biv IV struct: Type: unsigned int Base: 0 Step: 1 Biv: N Overflowness wrto loop niter: No-overflow <Group-candidate Costs>: Group 0: cand cost compl. inv.expr. inv.vars 1 9 2 NIL; NIL; 6 2 2 1; NIL; 8 0 0 NIL; NIL; 10 9 1 NIL; NIL; Group 1: cand cost compl. inv.expr. inv.vars 1 9 2 NIL; NIL; 6 2 2 2; NIL; 9 0 0 NIL; NIL; 10 9 1 NIL; NIL;