On 05/30/2018 03:37 AM, Richard Biener wrote: > On Tue, May 29, 2018 at 4:58 PM Martin Sebor <mse...@gmail.com> wrote: > >> On 05/28/2018 03:11 AM, Richard Biener wrote: >>> On Fri, May 25, 2018 at 10:15 PM Martin Sebor <mse...@gmail.com> wrote: >>> >>>> Attached is revision 3 of the patch incorporating your >>>> determine_value_range function with the requested changes. >>> >>> I'm somewhat torn about removing the "basic" interface on SSA names >>> so can you please not change get_range_info for now and instead >>> use determine_value_range in get_size_range for now? > >> I can do that. Can you explain why you're having second thoughts >> about going this route? > > I've seen you recurse between both APIs, thus they call each other. > That's ugly which is why I prefer to keep one of them a simple accessor > to the range-info associated with an SSA name. > > A future enhancement for the new API would be to walk def stmts > but then the API should stop at SSA names that do have range-info > associated and record range-info it computed into SSA names it > walked so the IL itself serves as a cache. That requires a way > to see whether an SSA name has range-info rather than having > get_range_info recurse into the walking machinery again. There's a lot of similarities between what you're suggesting here and the ranger API that Andrew has been working on.
Jeff