I believe that this is something new and is most likely fallout from diego's reworking of the tree to rtl converter.
To fix this will require a round of copy propagation, most likely in concert with some induction variable detection, since the most profitable place for this will be in loops. I wonder if any of this effects the rtl level induction variable discovery? > Hi, Ramana, > I tried the trunk version with/without your patch. It still produces > the same code as gcc4.2.2 does. In auto-inc-dec.c, the comments say > > *a > ... > a <- a + c > > becomes > > *(a += c) post > > But the problem is after Tree-SSA pass, there is no > a <- a + c > But something like > a_1 <- a + c > > Unless the auto-inc-dec.c can reverse a_1 <- a + c to a <- a + c. I > don't see this transformation is applicable in most scenarios. Any > comments? > > Cheers, > Bingfeng >