On Thu, Feb 6, 2020 at 6:07 PM Jakub Jelinek <ja...@redhat.com> wrote:
>
> On Thu, Feb 06, 2020 at 05:36:43PM +0100, Uros Bizjak wrote:
> > 2020-02-06  Uroš Bizjak  <ubiz...@gmail.com>
> >
> >     * config/i386/i386.md (*pushtf): Emit "#" instead of
> >     calling gcc_unreachable in insn output.
> >     (*pushxf): Ditto.
> >     (*pushdf): Ditto.
> >     (*pushsf_rex64): Ditto for alternatives other than 1.
> >     (*pushsf): Ditto for alternatives other than 1.
> >
> > Committed to mainline.
> >
> > Uros.
>
> > diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
> > index 496a8666643..34649c010b8 100644
> > --- a/gcc/config/i386/i386.md
> > +++ b/gcc/config/i386/i386.md
> > @@ -3032,7 +3032,7 @@
> >    "TARGET_64BIT || TARGET_SSE"
> >  {
> >    /* This insn should be already split before reg-stack.  */
> > -  gcc_unreachable ();
> > +  return ("#");
>
> No need for those ()s around, just return "#"; would do.

Eh... will "fix".

> > @@ -3156,7 +3156,8 @@
> >    "TARGET_64BIT"
> >  {
> >    /* Anything else should be already split before reg-stack.  */
> > -  gcc_assert (which_alternative == 1);
> > +  if (which_alternative != 1)
> > +    return ("#");
> >    return "push{q}\t%q1";
>
> Shouldn't this be then
>   "@
>    #
>    push{q}\t%q1
>    #"
> instead then?

I have considered this option, but choose the above. It just looks better.

Thanks,
Uros.

Reply via email to