------- Comment #19 from rakdver at gcc dot gnu dot org 2007-01-09 20:45 ------- (In reply to comment #14) > (which gcc version are the dumps created with?) > > First IVOPTs should not create pointer multiplication. Really. Second, the > problem is probably in tree-vrp.c:adjust_range_with_scev () or SCEV itself - > I guess SCEV might be confused by this multiplication as well.
The problem is really only ivopts, creating pointer multiplication. I have seen this bug before, after some changes to ivopts, but it is quite hard to reproduce -- one needs to force ivopts to generate pointer offset multiplied by a negative number and ivopts do not do that very often (the circumstances have to be really strange to make this appear useful). I will prepare a patch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29516