This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]