https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103820

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2021-12-23

--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> ---
This patch:

diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 284b9507466..4eb217a93ee 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -8588,7 +8588,8 @@ (define_peephole2
                   (any_mul_highpart:SWI48 (match_dup 2) (match_dup 0)))
              (clobber (match_dup 2))
              (clobber (reg:CC FLAGS_REG))])]
-  "REGNO (operands[0]) != REGNO (operands[2])
+  "TARGET_64BIT
+   && REGNO (operands[0]) != REGNO (operands[2])
    && REGNO (operands[0]) != REGNO (operands[3])
    && (REGNO (operands[0]) == REGNO (operands[4])
        || peep2_reg_dead_p (3, operands[0]))"
@@ -8608,7 +8609,8 @@ (define_peephole2
                     (any_mul_highpart:SI (match_dup 2) (match_dup 0))))
              (clobber (match_dup 2))
              (clobber (reg:CC FLAGS_REG))])]
-  "REGNO (operands[0]) != REGNO (operands[2])
+  "TARGET_64BIT
+   && REGNO (operands[0]) != REGNO (operands[2])
    && REGNO (operands[0]) != REGNO (operands[3])
    && (REGNO (operands[0]) == REGNO (operands[4])
        || peep2_reg_dead_p (3, operands[0]))"

made bootstrap to pass the failed point.

Reply via email to