implement value_range::domain_p()
Richard Biener
richard.guenther@gmail.com
Fri Nov 9 11:31:00 GMT 2018
On Thu, Nov 8, 2018 at 4:30 PM Aldy Hernandez <aldyh@redhat.com> wrote:
>
>
>
> On 11/8/18 10:24 AM, Richard Biener wrote:
> > On Thu, Nov 8, 2018 at 4:05 PM Aldy Hernandez <aldyh@redhat.com> wrote:
> >>
> >>
> >>
> >> On 11/8/18 9:53 AM, Richard Biener wrote:
> >>> On Thu, Nov 8, 2018 at 3:40 PM Aldy Hernandez <aldyh@redhat.com> wrote:
> >>>>
> >>>>
> >>>>
> >>>> On 11/8/18 9:34 AM, Richard Biener wrote:
> >>>>> On Thu, Nov 8, 2018 at 1:52 PM Aldy Hernandez <aldyh@redhat.com> wrote:
> >>>>>>
> >>>>>> I believe I've seen this idiom more than once. I know for sure I've
> >>>>>> used it in our ssa-range branch :). I'll hunt for the other uses and
> >>>>>> adjust accordingly.
> >>>>>
> >>>>> domain_p?! Isn't that the same as varying_p()? Also
> >>>>
> >>>> Sigh, yes. If we kept normalized value_ranges around where [MIN,MAX]
> >>>> degraded into VR_VARYING, then yes. But alas, we have two ways of
> >>>> representing the entire domain. Don't look at me. That crap was
> >>>> already there :).
> >>>>
> >>>> Another approach would be to call ::set_and_canonicalize() before
> >>>> checking varying_p() and teach the canonicalize function that [MIN, MAX]
> >>>> is VR_VARYING. How does that sound?
> >>>
> >>> But that's still broken for the case where it has equivalences. I fear that
> >>> if you look at users we'll end up with three or more different
> >>> varying_p/domain_p
> >>> things all being subtly different...
> >>
> >> Bah, I give up. I don't have time to look into possible subtleties wrt
> >> equivalences right now. I'll drop this patch.
> >>
> >>>
> >>> As said in the other thread we should see to separate equivs out
> >>> of the way.
> >>
> >> And as I meant to say in the other thread, I'll buy you many beers if
> >> you can do this for this release :).
> >
> > Well, yall made a mess out of the nicely contained VRP, and topped
> > it with C++.
> >
> > Now it's ... a mess.
>
> You wish! VRP has been a mess for quite a long time.
>
> >
> > And for whatever reason all the C++-ification and refactoring had to happen
> > for GCC 9 :/
>
> You're gonna absolutely love what we have in store for GCC 10 ;-).
I believe it when I see it. Oh wait - that was sarcastic!
Richard.
> Aldy
More information about the Gcc-patches
mailing list