OK. Thanks. I am gonna refine the patch following Richard's idea and test it. Thanks both Richard and Richi. juzhe.zhong@rivai.ai From: Richard Biener Date: 2023-05-24 20:51 To: Richard Sandiford CC: 钟居哲; gcc-patches Subject: Re: [PATCH V12] VECT: Add decrement IV iteration loop control by variable amount support On Wed, 24 May 2023, Richard Sandiford wrote: > Sorry, I realised later that I had an implicit assumption here: > if there are multiple rgroups, it's better to have a single IV > for the smallest rgroup and scale that up to bigger rgroups. > > E.g. if the loop control IV is taken from an N-control rgroup > and has a step S, an N*M-control rgroup would be based on M*S. > > Of course, it's also OK to create multiple IVs if you prefer. > It's just a question of which approach gives the best output > in practice. One thing to check is whether IVOPTs is ever able to eliminate one such IV using another. You can then also check whether when presented with a single IV it already considers the others you can create as candidates so you get the optimal selection in the end. Richard.