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

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
before is before r15-4397-g70f59d2a1c51bd

--- before.s    2024-10-17 20:17:06.172435278 +0000
+++ after.s     2024-10-17 20:15:24.703424849 +0000
@@ -15,21 +15,21 @@ main:
        movl    c(%rip), %eax
        movl    a(%rip), %esi
        movl    $6, d(%rip)
-       movq    16(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
        testl   %eax, %eax
        sete    %dl
        cmpl    $5, b(%rip)
        jg      .L3
        movzbl  %dl, %eax
-       pxor    %xmm1, %xmm1
+       pxor    %xmm2, %xmm2
        movl    $6, b(%rip)
        negl    %eax
        movd    %eax, %xmm3
        pshufd  $0xe0, %xmm3, %xmm0
-       pcmpeqd %xmm1, %xmm0
-       pcmpeqd %xmm1, %xmm0
-       pandn   %xmm2, %xmm0
-       pshufd  $0xe5, %xmm0, %xmm4
+       pcmpeqd %xmm2, %xmm0
+       pcmpeqd %xmm2, %xmm0
+       pandn   %xmm0, %xmm1
+       pshufd  $0xe5, %xmm1, %xmm4
        movd    %xmm4, %esi
        movd    %xmm4, a(%rip)
 .L3:


The andn is swapped.

Reply via email to