Currently global ranges are stored in SSA_NAME_RANGE_INFO as a pair of
wide_int-like objects along with the nonzero bits. We frequently lose
precision when streaming out our higher resolution iranges. The plan
was always to store the full irange between passes. However, as was
originally discuss
FYI...if no one has anything to say, I'd like to formally post this for
review.
So OK for trunk?
Aldy
On Wed, Jun 29, 2022, 11:22 Aldy Hernandez wrote:
> Currently global ranges are stored in SSA_NAME_RANGE_INFO as a pair of
> wide_int-like objects along with the nonzero bits. We frequentl
On Fri, Jul 01, 2022 at 04:12:55PM +0200, Aldy Hernandez wrote:
> > --- a/gcc/wide-int.h
> > +++ b/gcc/wide-int.h
> > @@ -1373,10 +1373,13 @@ namespace wi
> > : public int_traits {};
> > }
> >
> > -/* An array of N wide_int-like objects that can be put at the end of
> > - a variable-sized
On Fri, Jul 1, 2022 at 4:58 PM Jakub Jelinek wrote:
>
> On Fri, Jul 01, 2022 at 04:12:55PM +0200, Aldy Hernandez wrote:
> > > --- a/gcc/wide-int.h
> > > +++ b/gcc/wide-int.h
> > > @@ -1373,10 +1373,13 @@ namespace wi
> > > : public int_traits {};
> > > }
> > >
> > > -/* An array of N wide_i
On Fri, Jul 01, 2022 at 06:47:48PM +0200, Aldy Hernandez wrote:
> > So, you are looking for something like trailing_wide_ints but where that
> > N is actually a runtime value? Then e.g. the
> > struct {unsigned char len;} m_len[N];
> > member can't work properly either, because it isn't constant
On Fri, Jul 1, 2022, 18:58 Jakub Jelinek wrote:
> On Fri, Jul 01, 2022 at 06:47:48PM +0200, Aldy Hernandez wrote:
> > > So, you are looking for something like trailing_wide_ints but where
> that
> > > N is actually a runtime value? Then e.g. the
> > > struct {unsigned char len;} m_len[N];
> >
Aldy Hernandez via Gcc-patches writes:
> Currently global ranges are stored in SSA_NAME_RANGE_INFO as a pair of
> wide_int-like objects along with the nonzero bits. We frequently lose
> precision when streaming out our higher resolution iranges. The plan
> was always to store the full irange bet
On Fri, Jul 01, 2022 at 07:43:28PM +0200, Aldy Hernandez wrote:
> You can still say N=255 and things continue to work as they do now, since
> m_len[] is still statically determined. The only difference is that before,
> the size of the structure would be 2+1+255+sizeof(int) whereas now it would
> b
On Fri, Jul 1, 2022 at 8:53 PM Jakub Jelinek wrote:
>
> On Fri, Jul 01, 2022 at 07:43:28PM +0200, Aldy Hernandez wrote:
> > You can still say N=255 and things continue to work as they do now, since
> > m_len[] is still statically determined. The only difference is that before,
> > the size of the
BTW, I don't know if it got lost in all my patches, but we already
have an irange allocator that given an irange, returns a chunk of
memory holding a clone of that irange squished into its minimum
representable pairs (see vrange_allocator and friends). So we won't
ever be storing 255 or something
10 matches
Mail list logo