Daniel Berlin wrote: > > I agree completely. > We need to be a lot smarter about invalidating certain types of > expensive to compute information.
The way that we compute niter, for the moment, could be considered as not expensive. But the fact that we think that this is inexpensive makes us commit the error to invalidate the information too many times. There surely are reasons to invalidate this information, for example after aggressive scalar loop optimizations, ie. ivopts, but there are other passes like VRP or vectorizer that build the information and just discard it without having scrambled too much the code.