On Sat, Apr 29, 2017 at 10:43:52PM +0200, Steven Bosscher wrote:
> On Wed, Apr 26, 2017 at 1:25 PM, Jakub Jelinek wrote:
> > Or shall we just:
> > --- gcc/alias.c 2017-04-25 15:51:31.072923325 +0200
> > +++ gcc/alias.c 2017-04-26 13:23:55.595048464 +0200
> > @@ -3221,6 +3221,8 @@ memory_modified_in_insn_p (const_rtx mem
> >  {
> >    if (!INSN_P (insn))
> >      return false;
> > +  if (CALL_P (insn))
> > +    return true;
> 
> +"&& ! RTL_CONST_OR_PURE_CALL_P (insn)" ?

Without detailed analysis of the MEM I'm not convinced it is safe.
I believe even const or pure calls invalidate e.g. the argument stack slots,
at least in the ABIs where stack slots are owned by callee, not caller.

        Jakub

Reply via email to