Hi Mike,

On Tue, Nov 26, 2019 at 08:32:12PM -0500, Michael Meissner wrote:
> As we discussed in the V6 patches #1 and #2, before submitting the patches
> adding eI support for movdi and movsi, you prefered that I reformat the 
> patches
> to make them easier in the future to identify the changes.

No, that is not the reason.  It is to make it easier to handle patches
(review, revert, rebase, backport, etc.)  A patch should do one thing.

If you need to (say) rebase a big patch that merely changes layout, that
is not so hard to do (just a bit tedious sometimes).  If there are actual
changes mixed in...  *good luck*!

> This patch changes just the movsi_internal insn.  All of the constraints are 
> in
> the same order as the current sources.  I did add setting "num_insns" to this
> patch, but I left in setting "length".  I found otherwise the Spec benchmarks
> did not generate the same code with the patch.

Yes, "length" is still required everywhere, as I said before.  This is a
big problem.

>       * config/rs6000/rs6000.md (movsi_internal): Logically align the
>       columns of constraints and attributes to make it easier to add new
>       patterns in the middle.  Set the num_insns insn attribute.

        * config/rs6000/rs6000.md (movsi_internal): Reformat.
(and the attribute thing, yes, if you have to do that in this same patch.
Please don't, in the future.)

> --- gcc/config/rs6000/rs6000.md       (revision 278746)
> +++ gcc/config/rs6000/rs6000.md       (working copy)
> @@ -6889,24 +6889,36 @@ (define_split
>                                UNSPEC_MOVSI_GOT))]
>    "")
>  
> -;;           MR           LA           LWZ          LFIWZX       LXSIWZX
> -;;           STW          STFIWX       STXSIWX      LI           LIS
> -;;           #            XXLOR        XXSPLTIB 0   XXSPLTIB -1  VSPLTISW
> -;;           XXLXOR 0     XXLORC -1    P9 const     MTVSRWZ      MFVSRWZ
> -;;           MF%1         MT%0         NOP
> +;;              MR           LA
> +;;              LWZ          LFIWZX      LXSIWZX
> +;;              STW          STFIWX      STXSIWX
> +;;              LI           LIS         #
> +;;              XXLOR        XXSPLTIB 0  XXSPLTIB -1 VSPLTISW
> +;;              XXLXOR 0     XXLORC -1   P9 const
> +;;              MTVSRWZ      MFVSRWZ
> +;;           MF%1         MT%0        NOP

That has broken whitespace (mixing tabs and spaces).  All eight leading
spaces should be tabs, not just on some lines and not the others.

(Similar later, please fix all).

> +                 "*,         *,
> +                 load,       fpload,     fpload,
> +                 store,      fpstore,    fpstore,
> +                 *,          *,          *,
> +                 veclogical, vecsimple,  vecsimple,  vecsimple,
> +                 veclogical, veclogical, vecsimple,
> +                 mffgpr,     mftgpr,
> +                 *,          *,          *")
>     (set_attr "length"
> -             "*,          *,           *,           *,           *,
> -              *,          *,           *,           *,           *,
> -              8,          *,           *,           *,           *,
> -              *,          *,           8,           *,           *,
> -              *,          *,           *")
> +                 "*,         *,
> +                 *,          *,           *,
> +                 *,          *,           *,
> +                 *,          *,           8,
> +                 *,          *,           *,          *,
> +                 *,          *,           8,
> +                 *,          *,           *,
> +                 *,          *")

You have 2 and 3 on the last two lines elsewhere.

> +   (set_attr "num_insns"
> +                 "*,          *,
> +                 *,           *,         *,
> +                 *,           *,         *,
> +                 *,           *,         2,
> +                 *,           *,         *,          *,
> +                 *,           *,         2,
> +                 *,           *,
> +                 *,           *,         *")

Different indent on the columns here (that is true elsewhere, too).
It would help a lot if you kept all columns the same width, too.

Okay for trunk with the changelog and the layout fixed.  Thanks!


Segher

Reply via email to