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

--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-15 branch has been updated by LuluCheng
<[email protected]>:

https://gcc.gnu.org/g:08be034b67d82072b04d3924d4fa473a712a5b8b

commit r15-10496-g08be034b67d82072b04d3924d4fa473a712a5b8b
Author: Lulu Cheng <[email protected]>
Date:   Tue Sep 30 11:32:47 2025 +0800

    LoongArch: Fix bug for PR122097.

    When implementing the vector template for copysign, we used vector
    floating-point AND and IOR operations. This allows AND and IOR operands
    to be vector floating-point types. However, the constraint YC does not
    handle vector floating-point constants, resulting in ICE.

            PR target/122097

    gcc/ChangeLog:

            * config/loongarch/loongarch.cc
            (loongarch_const_vector_bitimm_set_p): Add support for vector
float.
            (loongarch_const_vector_bitimm_clr_p): Likewise.
            (loongarch_print_operand): Likewise.
            * config/loongarch/simd.md (and<mode>3): Likewise.

    gcc/testsuite/ChangeLog:

            * gcc.target/loongarch/pr122097.c: New test.

    (cherry picked from commit dbd0e8fc50e990e999217cc3a2fc5b6fbc74a09d)

Reply via email to