PR97107, libgo fails to build for power10

Alan Modra amodra@gmail.com
Wed Sep 23 00:30:01 GMT 2020


Hi Segher,

On Tue, Sep 22, 2020 at 06:59:42PM -0500, Segher Boessenkool wrote:
> On Tue, Sep 22, 2020 at 09:55:12AM +0930, Alan Modra wrote:
> >    if (!info->push_p)
> > -    return;
> > +    {
> > +      /* We need the -fsplit-stack prologue for functions that make
> > +	 tail calls.  Tail calls don't count against crtl->is_leaf.  */
> > +      for (insn = get_topmost_sequence ()->first; insn; insn = NEXT_INSN (insn))
> > +	if (CALL_P (insn))
> > +	  break;
> > +      if (!insn)
> > +	return;
> > +    }
> 
> I don't think that get_topmost_sequence is correct.

We get here from inside a sequence so we definitely need a way to look
at the function RTL rather than the empty sequence.  You want
push_topmost_sequence / pop_topmost_sequence around the rtl scan?

I wasn't aware there was a need for that when not emitting insns.  And
can't see any reason why when I look carefully, except that seems to
be customary, grep only shows one other place using
get_topmost_sequence as I did.

> Other than that this is fine for trunk (and backports).  Thanks!
> 
> 
> Segher

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Gcc-patches mailing list