Re: [x86_64 PATCH] Use [(const_int 0)] idiom consistently in i386.md

2023-05-10 Thread Uros Bizjak via Gcc-patches
On Wed, May 10, 2023 at 9:20 PM Roger Sayle  wrote:
>
>
> Hi Uros,
> This cleans up the use of [(clobber (const_int 0))] in the i386 backend.
> My apologies I must have copied this idiom from one of the other targets:
> aarch64.md, arm.md, thumb1.md, avr.md, or sparc.md.
>
> This patch has been tested on x86_64-pc-linux-gnu with make bootstrap
> and make -k check, both with and without --target_board=unix{-m32}
> with no new failures.  Ok for mainline?
>
>
> 2023-05-10  Roger Sayle  
>
> gcc/ChangeLog
> * config/i386/i386.md (*concat3_1): Use preferred
> [(const_int 0)] idiom, instead of [(clobber (const_int 0))].
> (*concat3_2): Likewise.
> (*concat3_3): Likewise.
> (*concat3_4): Likewise.
> (*concat3_5): Likewise.
> (*concat3_6): Likewise.
> (*concat3_7): Likewise.

OK, even as an obvious patch.

Thanks,
Uros.

>
>
> Thanks,
> Roger
> --
>


[x86_64 PATCH] Use [(const_int 0)] idiom consistently in i386.md

2023-05-10 Thread Roger Sayle

Hi Uros,
This cleans up the use of [(clobber (const_int 0))] in the i386 backend.
My apologies I must have copied this idiom from one of the other targets:
aarch64.md, arm.md, thumb1.md, avr.md, or sparc.md.

This patch has been tested on x86_64-pc-linux-gnu with make bootstrap
and make -k check, both with and without --target_board=unix{-m32}
with no new failures.  Ok for mainline?


2023-05-10  Roger Sayle  

gcc/ChangeLog
* config/i386/i386.md (*concat3_1): Use preferred
[(const_int 0)] idiom, instead of [(clobber (const_int 0))].
(*concat3_2): Likewise.
(*concat3_3): Likewise.
(*concat3_4): Likewise.
(*concat3_5): Likewise.
(*concat3_6): Likewise.
(*concat3_7): Likewise.


Thanks,
Roger
--

diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index cf90867..f2dd67e 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -11584,7 +11584,7 @@
   "INTVAL (operands[2]) ==  * BITS_PER_UNIT"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   split_double_concat (mode, operands[0], operands[3],
   gen_lowpart (mode, operands[1]));
@@ -11601,7 +11601,7 @@
   "INTVAL (operands[3]) ==  * BITS_PER_UNIT"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   split_double_concat (mode, operands[0], operands[1],
   gen_lowpart (mode, operands[2]));
@@ -11620,7 +11620,7 @@
   "INTVAL (operands[2]) ==  * BITS_PER_UNIT"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   split_double_concat (mode, operands[0], operands[3], operands[1]);
   DONE;
@@ -11638,7 +11638,7 @@
   "INTVAL (operands[3]) ==  * BITS_PER_UNIT"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   split_double_concat (mode, operands[0], operands[1], operands[2]);
   DONE;
@@ -11665,7 +11665,7 @@
VOIDmode))"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   rtx op3 = simplify_subreg (mode, operands[3], mode, 0);
   split_double_concat (mode, operands[0], op3,
@@ -11697,7 +11697,7 @@
VOIDmode))"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   rtx op3 = simplify_subreg (mode, operands[3], mode, 0);
   split_double_concat (mode, operands[0], op3, operands[1]);
@@ -11723,7 +11723,7 @@
   VOIDmode)"
   "#"
   "&& reload_completed"
-  [(clobber (const_int 0))]
+  [(const_int 0)]
 {
   rtx op2;
   if (mode == DImode)