Pushed to trunk to unblock sparc.
On Fri, May 3, 2024 at 4:24 PM Aldy Hernandez wrote:
>
> Ahh, that is indeed cleaner, and there's no longer a need to assert
> the sizeof of individual ranges.
>
> It looks like a default constructor is needed for the buffer now, but
> only for the default const
new (&m_buffer) int_range_max (as_a (r));
> > +m_vrange = new (&u.m_buffer) int_range_max (as_a (r));
> >else if (is_a (r))
> > -m_vrange = new (&m_buffer) frange (as_a (r));
> > + m_vrange = new (&u.m_buffer) frange (as_a (r));
> >
On Fri, May 3, 2024 at 2:24 AM Aldy Hernandez wrote:
>
> Sparc requires strict alignment and is choking on the byte vector in
> Value_Range. Is this the right approach, or is there a more canonical
> way of forcing alignment?
I think the suggestion was to change over to use an union and use the
Sparc requires strict alignment and is choking on the byte vector in
Value_Range. Is this the right approach, or is there a more canonical
way of forcing alignment?
If this is correct, OK for trunk?
gcc/ChangeLog:
* value-range.h (class Value_Range): Use a union.
---
gcc/value-range.h