On Mon, Jan 06, 2020 at 11:03:02AM -0700, Jeff Law wrote:
> On Mon, 2020-01-06 at 09:24 +0100, Jakub Jelinek wrote:
> > Hi!
> > 
> > As mentioned in the PR, the following testcase ICEs because rs, while valid
> > add_operand is not valid add_cint_operand and so gen_add3_insn fails,
> > because it doesn't meet the expander predicates.
> > 
> > Fixed thusly, bootstrapped/regtested on powerpc64{,le}-linux, ok for trunk?
> > 
> > Another option would be to:
> > 1) always use gen_add3_insn, but if it returns NULL use the extra
> > emit_move_insn (end_addr, GEN_INT (-rounded_size));
> > and retry with end_addr instead of rs
> > 2) if the first gen_add3_insn returned NULL or if it created more than one
> > instruction, add the REG_FRAME_RELATED_EXPR note on the last insn
> > 
> > Is that what you want to do instead?
> > 
> > 2020-01-06  Jakub Jelinek  <ja...@redhat.com>
> > 
> >     PR target/93122
> >     * config/rs6000/rs6000-logue.c
> >     (rs6000_emit_probe_stack_range_stack_clash): Only use gen_addr3_insn
> >     if add_cint_operand predicate matches.  Use rs instead of doing
> >     GEN_INT again.
> > 
> >     * gcc.target/powerpc/pr93122.c: New test.
> I think this is fine, but give the PPC maintainers a few days to chime
> in.

It's not okay, whether I'll need a few days or more to reply.  But I will
reply soon :-)


Segher

Reply via email to