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

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

https://gcc.gnu.org/g:6122c67069b9a17a7e384ae91a0995bf4ccc9200

commit r16-8874-g6122c67069b9a17a7e384ae91a0995bf4ccc9200
Author: Lulu Cheng <[email protected]>
Date:   Thu Apr 30 15:56:30 2026 +0800

    LoongArch: Fix ICE caused by incomplete split conditions [PR125057].

    Since the split conditions in loongarch_split_vector_move are incomplete,
    the following RTL:

            (set (reg:V4DI 32 $f0) (subreg:V4DI (reg:V2DI 32 $f0) 0))

    is incorrectly split, leading to an ICE.

    This patch fixes the issue by completing the split conditions.

            PR target/125057

    gcc/ChangeLog:

            * config/loongarch/loongarch.cc
            (loongarch_split_vector_move): Complete the split condition.
            * config/loongarch/loongarch.h (LSX_REG_RTX_P): Delete.
            (LASX_REG_RTX_P): Delete.
            (GP_REG_RTX_P): Define macro.

    gcc/testsuite/ChangeLog:

            * gcc.target/loongarch/vector/lasx/pr125057.c: New test.
            * gcc.target/loongarch/vector/lsx/lsx-mov-2.c: New test.

    (cherry picked from commit 1bb9817fa87644db91d713808a78d571086d0d78)

Reply via email to