On Tue, 5 May 2020, Jeff Law wrote:

> On Mon, 2020-05-04 at 14:11 +0200, Richard Biener wrote:
> > This patch sits in my trees for quite some years and I always forget
> > to push it - it usually gets triggered by weird targets (PSImode
> > pointers/sizetype) which run into GIMPLE IL checking asserts for
> > pointer -> integer conversions and the "sizetype" special-case
> > not triggering.  That special-case should not exist but instead
> > it should be something like the patch below - the whole point
> > of the IL consistecy check is to ensure we know how to extend
> > from pointer to integer.
> > 
> > I've bootstrapped / tested the patch on x86_64 where it is a no-op.
> > 
> > But from the looks, can you punch any holes in it?  (it was able
> > to resolve reporters issues at least).
> > 
> > Thanks,
> > Richard.
> > 
> > -
> > 
> > The existing check doesn't reflect the actual reason why it exists,
> > the patch makes us to use POINTERS_EXTEND_UNSIGNED instead which
> > is specified for ptr_mode and word_mode/Pmode precision.
> > 
> >     * tree-cfg.c (verify_gimple_assign_unary): Adjust integer
> >     to/from pointer conversion checking.
> I'd say let's go for it.  The tester will pick it up and I'll complain if any 
> of
> the targets start failing.

Fair enough - I've pushed the patch.

Richard.

Reply via email to