This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix PR55011
On Mon, 22 Oct 2012, Michael Matz wrote:
> Hi,
>
> On Mon, 22 Oct 2012, Richard Biener wrote:
>
> >
> > This fixes PR55011, it seems nothing checks for invalid lattice
> > transitions in VRP,
>
> That makes sense, because the individual parts of VRP that produce new
> ranges are supposed to not generate invalid transitions. So if anything
> such checking should be an assert and the causes be fixed.
No, the checking should be done in update_value_range which copies
the new VR over to the lattice. The job of that function is also
to detect lattice changes.
> > so the following adds that
>
> It's a work around ...
No.
> > since we now can produce a lot more UNDEFINED than before
>
> ... for this. We should never "produce" UNDEFINED when the input wasn't
> UNDEFINED already.
Why? We shouldn't update the lattice this way, yes, but that is what
the patch ensures. The workers only compute a new value-range
for a stmt based on input value ranges.
> > not doing so triggers issues.
>
> Hmm?
It oscillates and thus never finishes.
Richard.