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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2024-07-18
           Keywords|                            |needs-bisection
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.

The split for avx_cmpv4sf3_1 has not changed since r11-6849-gee78c20e74d302 . I
don't know why it is only showing up now.

This will work around it.
```
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index c134494cd20..cebfc3b1e6b 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -3873,9 +3873,11 @@ (define_insn_and_split "*avx_cmp<mode>3_1"
           (match_dup 4)
           (match_dup 5)]
          UNSPEC_PCMP))
-   (set (match_dup 0) (match_dup 7))]
+   (set (match_dup 8) (match_dup 7))]
+   (set (match_dup 0) (match_dup 8))]
 {
   operands[6] = gen_reg_rtx (<MODE>mode);
+  operands[8] = gen_reg_rtx (GET_MODE (operands[0]));
   operands[7]
     = lowpart_subreg (GET_MODE (operands[0]), operands[6], <MODE>mode);
 })

```

But I am not 100% sure it is the correct fix.

Note only test2 is needed here to get the ICE.

Reply via email to