> -----Original Message-----
> From: Jiang, Haochen <haochen.ji...@intel.com>
> Sent: Friday, January 12, 2024 10:26 AM
> To: gcc-patches@gcc.gnu.org
> Cc: Liu, Hongtao <hongtao....@intel.com>; ubiz...@gmail.com
> Subject: [PATCH] i386: Remove redundant move in vnni pattern
> 
> Hi all,
> 
> This patch removes all redundant set in vnni patterns.
> 
> Ok for trunk?
Ok.
> 
> Thx,
> Haochen
> 
> gcc/ChangeLog:
> 
>       * config/i386/sse.md (sdot_prod<mode>): Remove redundant SET.
>       (usdot_prod<mode>): Ditto.
>       (sdot_prod<mode>): Ditto.
>       (udot_prod<mode>): Ditto.
> ---
>  gcc/config/i386/sse.md | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index
> 532738dcf94..acd10908d76 100644
> --- a/gcc/config/i386/sse.md
> +++ b/gcc/config/i386/sse.md
> @@ -16174,7 +16174,6 @@
>        operands[2] = lowpart_subreg (<sseunpackmode>mode,
>                                   force_reg (<MODE>mode, operands[2]),
>                                   <MODE>mode);
> -      emit_insn (gen_rtx_SET (operands[0], operands[3]));
>        emit_insn (gen_vpdpwssd_<SDOT_VPDP_SUF> (operands[0],
> operands[3],
>                                              operands[1], operands[2]));
>      }
> @@ -29963,7 +29962,6 @@
>    operands[2] = lowpart_subreg (<ssedvecmode>mode,
>                               force_reg (<MODE>mode, operands[2]),
>                               <MODE>mode);
> -  emit_insn (gen_rtx_SET (operands[0], operands[3]));
>    emit_insn (gen_vpdpbusd_<ssedvecmodelower> (operands[0],
> operands[3],
>                                 operands[1], operands[2]));
>    DONE;
> @@ -30780,7 +30778,6 @@
>        operands[2] = lowpart_subreg (<ssedvecmode>mode,
>                                   force_reg (<MODE>mode, operands[2]),
>                                   <MODE>mode);
> -      emit_insn (gen_rtx_SET (operands[0], operands[3]));
>        emit_insn (gen_vpdpbssd_<ssedvecmodelower> (operands[0],
> operands[3],
>                                                 operands[1], operands[2]));
>      }
> @@ -30857,7 +30854,6 @@
>        operands[2] = lowpart_subreg (<ssedvecmode>mode,
>                                   force_reg (<MODE>mode, operands[2]),
>                                   <MODE>mode);
> -      emit_insn (gen_rtx_SET (operands[0], operands[3]));
>        emit_insn (gen_vpdpbuud_<ssedvecmodelower> (operands[0],
> operands[3],
>                                                 operands[1], operands[2]));
>     }
> --
> 2.31.1

Reply via email to