On Tue, Jun 04, 2019 at 03:38:08PM +0800, Hongtao Liu wrote:
> --- gcc/ChangeLog     (revision 271853)
> +++ gcc/ChangeLog     (working copy)
> @@ -4706,6 +4706,26 @@
>       reprocessing.  Always call df_analyze before fixing up debug bind
>       insns.
>  
> +2019-03-24 Hongtao Liu       <hongtao....@intel.com>

name should be separated from date and email by 2 spaces on each side,
you have just one space before and a tab after.

> +
> +     PR target/89803
> +     * config/i386/avx512dqintrin.h
> +     (_mm_mask_fpclass_ss_mask,_mm_mask_fpclass_sd_mask):
> +     New intrinsics.

There should be space after comma, and a line break should be there
only when it will not fit, so:

+       * config/i386/avx512dqintrin.h (_mm_mask_fpclass_ss_mask,
+       _mm_mask_fpclass_sd_mask): New intrinsics.

> +     (_mm_fpclass_ss_mask,_mm_fpclass_sd_mask):
> +     Modified, use new builtins.

Similarly.

> +     * config/i386/i386-builtin.def
> +     (__builtin_ia32_fpclassss_mask, _builtin_ia32_fpclasssd_mask):
> +     New builtins.

Again.

> +     (__builtin_ia32_fpclassss, _builtin_ia32_fpclasssd): Deleted.
> +     * config/i386/i386-builtin-types.def:
> +     Delete relate types.

You should say what exactly you've deleted, so

+       * config/i386/i386-builtin-types.def (QI_FTYPE_V2DF_INT,
+       QI_FTYPE_V4SF_INT): Remove.

> +     * config/i386/i386-expand.c:
> +     Ditto.

Mention what you've changed, so

+       * config/i386/i386-expand.c (ix86_expand_args_builtin): Remove
+       QI_FTYPE_V2DF_INT and QI_FTYPE_V4SF_INT cases.

> +     * config/i386/sse.md
> +     (define_insn "avx512dq_vmfpclass<mode><mask_scalar_merge_name>):
> +     Modified with mask.

That is not what you've done.

+       * config/i386/sse.md (avx512dq_vmfpclass<mode>): Rename to ...
+       (avx512dq_vmfpclass<mode><mask_scalar_merge_name>): ... this.  Add
+       <mask_scalar_merge_operand3> to insn template.

> --- gcc/config/i386/avx512dqintrin.h  (revision 271853)
> +++ gcc/config/i386/avx512dqintrin.h  (working copy)
> @@ -1362,7 +1362,7 @@
>  __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
>  _mm_fpclass_ss_mask (__m128 __A, const int __imm)
>  {
> -  return (__mmask8) __builtin_ia32_fpclassss ((__v4sf) __A, __imm);
> +  return (__mmask8) __builtin_ia32_fpclassss_mask ((__v4sf) __A, __imm, -1);

Most other avx512*.h code uses explicit (__mmaskN) -1 instead of just -1, so
perhaps for consistency use:
+  return (__mmask8) __builtin_ia32_fpclassss_mask ((__v4sf) __A, __imm,
+                                                   (_mmask8) -1);
?

>  }
>  
>  extern __inline __mmask8
> @@ -1369,9 +1369,23 @@
>  __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
>  _mm_fpclass_sd_mask (__m128d __A, const int __imm)
>  {
> -  return (__mmask8) __builtin_ia32_fpclasssd ((__v2df) __A, __imm);
> +  return (__mmask8) __builtin_ia32_fpclasssd_mask ((__v2df) __A, __imm, -1);
>  }

Likewise.

>  #define _mm_fpclass_ss_mask(X, C)                                            
> \
> -  ((__mmask8) __builtin_ia32_fpclassss ((__v4sf) (__m128) (X), (int) (C)))  \
> +  ((__mmask8) __builtin_ia32_fpclassss_mask ((__v4sf) (__m128) (X), (int) 
> (C), (__mmask8) (-1))) \
>  
>  #define _mm_fpclass_sd_mask(X, C)                                            
> \
> -  ((__mmask8) __builtin_ia32_fpclasssd ((__v2df) (__m128d) (X), (int) (C))) \
> +  ((__mmask8) __builtin_ia32_fpclasssd_mask ((__v2df) (__m128d) (X), (int) 
> (C), (__mmask8) (-1))) \
>  
> +#define _mm_mask_fpclass_ss_mask(X, C, U)                                    
> \
> +  ((__mmask8) __builtin_ia32_fpclassss_mask ((__v4sf) (__m128) (X), (int) 
> (C), (__mmask8) (U)))
> +
> +#define _mm_mask_fpclass_sd_mask(X, C, U)                                    
> \
> +  ((__mmask8) __builtin_ia32_fpclasssd_mask ((__v2df) (__m128d) (X), (int) 
> (C), (__mmask8) (U)))

Too long lines.

> +2019-03-24 Hongtao Liu <hongtao....@intel.com>
> +
> +     PR target/89803
> +     * gcc.target/i386/avx-1.c
> +     (__builtin_ia32_fpclasss[sd]): Replaced with 
> builtin_ia32_fpclasss[sd]_mask.
> +     * gcc.target/i386/sse-13.c:
> +     (__builtin_ia32_fpclasss[sd]): Likewise.
> +     * gcc.target/i386/sse-23.c
> +     (__builtin_ia32_fpclasss[sd]): Likewise.

Similar problems in this ChangeLog as in gcc/ChangeLog, you don't want a
linebreak after the filename if the function name can fit in, too long line
too, sse-13.c has an extra : after it and I believe we don't allow wildcards
in the function names between
()s, so it should be:
+       * gcc.target/i386/avx-1.c (__builtin_ia32_fpclassss,
+       __builtin_ia32_fpclasssd): Remove.
+       (__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask): Define.
etc.

        Jakub

Reply via email to