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

            Bug ID: 122323
           Summary: [14/15/16 Regression] Failed to optimize copysign
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hjl.tools at gmail dot com
  Target Milestone: ---

[hjl@gnu-tgl-3 pr99930]$ cat y.cc 
#include <stdlib.h>

float t(float x)
{
  return -abs (x);
}
[hjl@gnu-tgl-3 pr99930]$ /usr/gcc-13.2.1-x32/bin/gcc -O3 -S y.cc
[hjl@gnu-tgl-3 pr99930]$ cat y.s
        .file   "y.cc"
        .text
        .p2align 4
        .globl  _Z1tf
        .type   _Z1tf, @function
_Z1tf:
.LFB22:
        .cfi_startproc
        orps    .LC1(%rip), %xmm0
        ret
        .cfi_endproc
.LFE22:
        .size   _Z1tf, .-_Z1tf
        .section        .rodata.cst16,"aM",@progbits,16
        .align 16
.LC1:
        .long   -2147483648
        .long   0
        .long   0
        .long   0
        .ident  "GCC: (GNU) 13.2.1 20240112"
        .section        .note.GNU-stack,"",@progbits
[hjl@gnu-tgl-3 pr99930]$ /usr/gcc-14.2.1-x32/bin/gcc -O3 -S y.cc
[hjl@gnu-tgl-3 pr99930]$ cat y.s
        .file   "y.cc"
        .text
        .p2align 4
        .globl  _Z1tf
        .type   _Z1tf, @function
_Z1tf:
.LFB23:
        .cfi_startproc
        movss   .LC1(%rip), %xmm1
        movss   .LC0(%rip), %xmm2
        movaps  %xmm0, %xmm3
        movaps  %xmm1, %xmm0
        andnps  %xmm3, %xmm0
        andps   %xmm2, %xmm1
        orps    %xmm1, %xmm0
        ret
        .cfi_endproc
.LFE23:
        .size   _Z1tf, .-_Z1tf
        .section        .rodata.cst4,"aM",@progbits,4
        .align 4
.LC0:
        .long   -1082130432
        .section        .rodata.cst16,"aM",@progbits,16
        .align 16
.LC1:
        .long   -2147483648
        .long   0
        .long   0
        .long   0
        .ident  "GCC: (GNU) 14.2.1 20240906 [releases/gcc-14
r14-10649-gaedf6f810ee]"
        .section        .note.GNU-stack,"",@progbits
[hjl@gnu-tgl-3 pr99930]$

Reply via email to