On Fri, Oct 12, 2012 at 3:31 PM, Vladimir Makarov wrote: > Ops. Sorry, Steven. I did a wrong conclusion because I thought I would > have found such code generation problem if it had an affect.
Oh, the patch shouldn't (and doesn't) change the generated code, that is not how cfgloops works: record_loop_exits is just a cache. If you use record_loop_exits, cfgloops sets up a cache of the loop exits so that if you look them up frequently it can return the VEC of edges faster. But if you don't use record_loop_exits, it still returns the same set of edges (and in the same order, too). It just will be slower because cfgloop will search for the loop exit edges by loading the loop body and scanning the successor edges of the loop body basic blocks. > So your patch is ok. Thanks for working on this. I'll commit the patch later this weekend. Thanks for the quick review! Ciao! Steven